added some important print commands, inputting first data of actual spider now
This commit is contained in:
parent
3e30365c90
commit
320e19875a
3 changed files with 111 additions and 30 deletions
Binary file not shown.
|
@ -3,6 +3,9 @@ from rocketchat.api import RocketChatAPI
|
||||||
import configparser
|
import configparser
|
||||||
import json
|
import json
|
||||||
import requests
|
import requests
|
||||||
|
import yaml
|
||||||
|
|
||||||
|
import subprocess
|
||||||
|
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('config.ini')
|
config.read('config.ini')
|
||||||
|
@ -50,30 +53,85 @@ if __name__ == '__main__':
|
||||||
import time
|
import time
|
||||||
import schedule
|
import schedule
|
||||||
|
|
||||||
def getroomdata():
|
already_updated = False
|
||||||
|
|
||||||
room_list = []
|
|
||||||
rooms = os.listdir('rooms')
|
|
||||||
for room in rooms:
|
|
||||||
room_file = open('rooms/' + room, 'r')
|
|
||||||
room_file_raw = room_file.read()
|
|
||||||
room_file.close()
|
|
||||||
|
|
||||||
room_file_list = room_file_raw.split('§%§%')
|
|
||||||
room_list.append([room[:-3], room_file_list[0], room_file_list[1], room_file_list[2]])
|
|
||||||
|
|
||||||
return room_list
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
while True:
|
while True:
|
||||||
time.sleep(4)
|
time.sleep(4)
|
||||||
|
#already_updated = True
|
||||||
|
now = datetime.datetime.now()
|
||||||
|
|
||||||
|
current_hour = now.strftime("%H")
|
||||||
|
|
||||||
|
if int(current_hour) > 6:
|
||||||
|
aftersix = True
|
||||||
|
|
||||||
|
if int(current_hour) < 6:
|
||||||
|
aftersix = False
|
||||||
|
already_updated == False
|
||||||
|
|
||||||
|
if aftersix == True and already_updated == False:
|
||||||
|
|
||||||
|
room_list = []
|
||||||
|
rooms = os.listdir('rooms')
|
||||||
|
for room in rooms:
|
||||||
|
room_file = open('rooms/' + room, 'r')
|
||||||
|
room_file_raw = room_file.read()
|
||||||
|
room_file.close()
|
||||||
|
|
||||||
|
room_file_list = room_file_raw.split('§%§%')
|
||||||
|
room_list.append([room[:-4], room_file_list[0], room_file_list[1], room_file_list[2]])
|
||||||
|
|
||||||
|
with open(spider_directory + '/spiders/config.yaml' , "r") as stream:
|
||||||
|
try:
|
||||||
|
config = yaml.safe_load(stream)
|
||||||
|
except yaml.YAMLError as exc:
|
||||||
|
print(exc)
|
||||||
|
fdb_list = []
|
||||||
|
#print(config)
|
||||||
|
|
||||||
|
for key in config:
|
||||||
|
fdb_list.append(key)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
data = dict({})
|
||||||
|
for room in room_list:
|
||||||
|
print(room[0])
|
||||||
|
room_fdbs = room[2]
|
||||||
|
#subprocess.run(["python", spider_directory + 'main.py', fdbs])
|
||||||
|
|
||||||
|
for room_fdb in eval(room_fdbs):
|
||||||
|
#print('room_fdb',room_fdb, 'fdb_list',fdb_list)
|
||||||
|
if room_fdb in fdb_list:
|
||||||
|
try:
|
||||||
|
iteration_var_list = config.get(room_fdb).get("entry-list").get("iteration-var-list")
|
||||||
|
except Exception as e:
|
||||||
|
print('there was an error with the entry-list parameter in the config regarding the fdb ', room_fdb)
|
||||||
|
iterdict = {}
|
||||||
|
for i in eval(iteration_var_list):
|
||||||
|
f = open(spider_directory + "/spiders/output/" + room_fdb + str(i) + "entryList.txt")
|
||||||
|
text = f.read()
|
||||||
|
|
||||||
|
dictionary_entry_list = eval(text)
|
||||||
|
|
||||||
|
iterdict[i] = dictionary_entry_list
|
||||||
|
|
||||||
|
data[room_fdb] = iterdict
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
print('data',data['giz'][2],'data')
|
||||||
|
already_updated = True
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# if datestime.split over etc and updated= true etc
|
||||||
|
|
||||||
|
|
||||||
n += 1
|
n += 1
|
||||||
print(n)
|
print(n)
|
||||||
|
@ -143,11 +201,31 @@ if __name__ == '__main__':
|
||||||
room_file.close()
|
room_file.close()
|
||||||
|
|
||||||
room_file_list = room_file_raw.split('§%§%')
|
room_file_list = room_file_raw.split('§%§%')
|
||||||
room_list.append([room[:-3], room_file_list[0], room_file_list[1], room_file_list[2]])
|
room_list.append([room[:-4], room_file_list[0], room_file_list[1], room_file_list[2]])
|
||||||
|
|
||||||
#print(room_list)
|
#print(room_list)
|
||||||
answer = str(room_list)
|
answer = str(room_list)
|
||||||
|
|
||||||
|
if user_input_list[0] == 'printfdbs':
|
||||||
|
|
||||||
|
answer = str(fdb_list)
|
||||||
|
|
||||||
|
if len(user_input_list) > 1:
|
||||||
|
answer = 'Die Syntax zum Ausgeben der konfigurierten Förderdatenbanken hat einen Fehler. Versuche es erneut, mit -> printfdbs'
|
||||||
|
|
||||||
|
if user_input_list[0] == 'deleteroom':
|
||||||
|
try:
|
||||||
|
room_id_del = user_input_list[1]
|
||||||
|
except Exception as e:
|
||||||
|
room_id_del = 'NONE'
|
||||||
|
print(e)
|
||||||
|
os.remove("rooms/" + room_id_del + ".txt")
|
||||||
|
|
||||||
|
anwer = 'deleting the requested room..'
|
||||||
|
|
||||||
|
if len(user_input_list) > 2:
|
||||||
|
answer = 'Die Syntax zum Löschen eines Raumes hat einen Fehler. Versuche es erneut, nach dem Muster -> deleteroom <room_id>'
|
||||||
|
|
||||||
|
|
||||||
if user_input_list[0] == 'createroom':
|
if user_input_list[0] == 'createroom':
|
||||||
try:
|
try:
|
||||||
|
@ -173,16 +251,19 @@ if __name__ == '__main__':
|
||||||
answer = 'Um einen Raum zu erstellen, in dem neueste Einträge geteilt werden, lautet die Syntax: createroom <Raumname> <Liste-Datenbanken> <Liste-Filtertags>'
|
answer = 'Um einen Raum zu erstellen, in dem neueste Einträge geteilt werden, lautet die Syntax: createroom <Raumname> <Liste-Datenbanken> <Liste-Filtertags>'
|
||||||
|
|
||||||
else:
|
else:
|
||||||
new_room = api.create_public_room(room_name,
|
try:
|
||||||
members=[latest_message_user_username],
|
new_room = api.create_public_room(room_name,
|
||||||
read_only=True)
|
members=[latest_message_user_username],
|
||||||
|
read_only=True)
|
||||||
|
new_room_id = new_room['channel']['_id']
|
||||||
new_room_id = new_room['channel']['_id']
|
room_file = open('rooms/' + new_room_id + '.txt', 'w')
|
||||||
room_file = open('rooms/' + new_room_id + '.txt', 'w')
|
room_file.write( room_name + '§%§%' + databases + '§%§%' + filters)
|
||||||
room_file.write( room_name + '§%§%' + databases + '§%§%' + filters)
|
room_file.close()
|
||||||
room_file.close()
|
answer = 'Der Command wurde übermittelt'
|
||||||
answer = 'Der Command wurde übermittelt'
|
|
||||||
|
except Exception as e:
|
||||||
|
print('it was not able to create the room, the original error message is:', e)
|
||||||
|
answer = 'There was an error creating the room, look up the logs.. the original error was: ' + str(e)
|
||||||
|
|
||||||
|
|
||||||
#print('oi', user_input)
|
#print('oi', user_input)
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
printrooms§%§%P6rQGgS9u7RqZM2iz
|
printfdbs§%§%GGDZAhgELP2HDS5eM
|
Loading…
Reference in a new issue