Closed RobTranquillo closed 10 years ago
Erst mal zu der Fehlermeldung mit LOG_FILE: Wie hast Du Deine Konfiguration angelegt? Hast Du comfing_example.py kopiert und bearbeitet? Hast Du die LOG_FILE-Zeile noch, und wie sieht die aus?
Zu Deinem ersten Versuch mit --submissionurl: Die URL, die Du übergibst, gehört zu einer Sitzungsseite. Erwartet wird die Seite einer Vorlage (submission). Beispiel:
python main.py -v --submissionurl "http://ratsinfo.dresden.de/vo0050.php?__kvonr=8174&voselect=3632"
Im zweiten Versuch mit --submissionid übergibst Du wahrscheinlich entsprechend die URL einer Sitzung statt einer Vorlage. Versuch es hier mal mit der 8174.
python main.py -v --submissionid 8174
Die dritte Fehlermeldung deutet darauf hin, dass der String für SESSION_DETAIL_PARSE_PATTERN, der in der Konfiguration (im URLs-Dict, darin im Bereich "PHP") nicht passt. Hier kannst Du sehen, wie das in Mannheim aussieht:
https://github.com/marians/scrape-a-ris/blob/master/config/mannheim.py#L93
Auch hier wäre interessant, ob/wie Du die Konfiguration erstellt und bearbeitet hast.
Der LOG_FILE Fehler kam durch das Fehlen der entsprechende Zeile in der config. Ist gefixt:
LOGFILE = 'scrapearis%s_%s.log' % (DB_NAME, RS)
Line93 schaut bei mir noch genau so aus wie bei im repository:
Meeting detail page 'SESSION_DETAIL_PARSE_PATTERN': 'to0040.php?__ksinr={meeting_id:d}', 'SESSION_DETAIL_PRINT_PATTERN': BASE_URL + 'to0040.php?__ksinr=%d',
(Dafür sind allgemein bei mir unter php deutlich mehr Zeilen als im repository)
Da, wo bei Dir meeting_id:d
steht, müsste session_id:d
stehen.
ok geändert und mit Deinem URL-Vorschlag noch mal probiert. Bleibt aber beim KeyError:
% python main.py -v --submissionurl "http://ratsinfo.dresden.de/vo0050.php?__kvonr=8174&voselect=3632"
Found PHP template system
Traceback (most recent call last):
File "main.py", line 127, in <module>
scraper.get_submission(submission_url=options.submission_url)
File "/home/rob/Dokumente/code/scrape-a-ris/risscraper/scraper.py", line 402, in get_submission
submission_id = parsed['submission_id']
File "/home/rob/Dokumente/code/scrape-a-ris/venv/lib/python2.7/site-packages/parse.py", line 968, in __getitem__
return self.named[item]
KeyError: 'submission_id'
Das ist ein neuer Fehler. Er kommt aus Zeile 402 von risscraper/scraper.py, darin geht es um SUBMISSION_DETAIL_PARSE_PATTERN. Wie die Konfiguration dafür aussehen sollte, kannst Du wieder im Konfigurationsbeispiel sehen.
https://github.com/marians/scrape-a-ris/blob/master/config_example.py#L138
Cool. jetzt rödelt es schon mal los. Danke. Und sorry wenn ich mich bisschen langsam anstelle. Jetzt treten zwar vereinzelt immer mal: xyz not found in RESULT_STRING auf. Ich hoffe, das werd ich allein hinbekommen durch erweitern des jeweiligen Namensraum.
Wunderbar. Viel Erfolg damit!
Hallo, ich versuche den scraper für das Dresdner RIS klar zu kriegen. Als python noob allerdings nicht ganz einfach.
beim ersten Versuch nach Anleitung kam dies: $ python main.py │Traceback (most recent call last): │ File "main.py", line 77, in
│ if config.LOG_FILE is not None:
│AttributeError: 'module' object has no attribute 'LOG_FILE'
darauf hin hab ich LOG_FILE durch LOG_BASE_DIR ersetzt (Zeile 76 & 79) darauf hin startete das System und erkannte ein php environment.
Leider klappt danach keiner der 3 scrape modi (url, id, Zeitraum) wie folgende Fehler zeigen: