Organisatorisches

1.5. Organisatorisches#

Hier findet ihr Informationen zu Teilnahmemodalitäten, Prüfungsleistungen und Kommunikation.

Teilnahmeschein:

  • Aktive Teilnahme: n-2 Sitzungen

  • Wöchentliche Übungsaufgaben: Lösungen Samstagabend vor jeder Stunde an mich schicken (l.poggel@fu-berlin.de). Übungen schicke ich euch über den Blackboard-Verteiler jede Woche bis Dienstagabend.

  • Ein Kahoot-Quiz erstellen und moderieren. Login über https://kahoot.com/

Leistungsschein:

  • Wie Teilnahmeschein

  • Zusätzlich ein eigenständiges Projekt (ersetzt die Hausarbeit): Ihr implementiert auf der Grundlage der Inhalte aus diesem Seminar einen Web Scraper für eine Website eurer Wahl. Das Jupyter Notebook sendet ihr bis zum 30.09.2024 an l.poggel@fu-berlin.de. Die Anforderungen und die Bewertungsgrundlage besprechen wir rechtzeitig im Laufe des Semesters.

Kommunikation:

Bei Fragen, Kritik oder falls ihr mal eine Sitzung nicht kommen könnt, schreibt mir eine E-Mail an l.poggel@fu-berlin.de. Um eine Sprechstunde zu vereinbaren, könnt ihr mich gern vor oder nach den Sitzungen ansprechen oder mir eine E-Mail schreiben.

Bewertungskriterien für das Abschlussprojekt:

  • Umfang: Jupyter Notebook, bestehend aus Codezellen und Text (Markdown-Zellen) zur Dokumentation. Der Umfang der Dokumentationstextes (exklusive Code) sollte 4-8 Seiten (ca. 1200-3000 Wörter) entsprechen. Im Dokumentationstext erläutert ihr die Auswahl der zu extrahierenden Daten in Bezug auf eine (fiktive) Fragestellung. Ihr diskutiert, in welchem Umfang und in welchem Format die Daten verfügbar sind, und von welchen Webseiten ihr die Daten extrahieren wollt. Ihr erläutert das gewählte Verfahren zur Datenextraktion (API-Abfrage, Web Scraping mit BeautifulSoup oder Selenium) und begründet eure Auswahl (Stichwort JavaScript, Verfügbarkeit von APIs, …). Außerdem diskutiert ihr den rechtlichen Rahmen sowie für das Projekt relevante Beschränkungen in Bezug auf Web Scraping bzw. API-Abfragen. Der zeitliche Aufwand zur Bearbeitung des Projekts sollte den Vorgaben aus der entsprechenden Modulbeschreibung in eurer Studien- und Prüfungsordnung entsprechen. Bei der Diskussion des rechtlichen Rahmens und der Umsetzung von Verarbeitungsschritten, die wir nicht im Seminar besprochen haben, ist ggf. Eigenrecherche erforderlich. Die verwendete Literatur und ggf. Urheber:innen von Code, den ihr verwendet, gebt ihr in einem Literaturverzeichnis am Ende des Jupyter Notebooks an.

  • Abgabefrist: 30.09.2024

  • Abgabeformat: Jupyter Notebook (.ipynb-Datei)

Note

Erläuterung

1.0-1.3

Die zu extrahierenden Daten sind in Bezug auf die Forschungsfrage sinnvoll gewählt. Die Wahl des Verfahrens zur Datenextraktion (API-Abfrage, Web Scraping mit BeautifulSoup oder Selenium) ist überzeugend begründet. Unter den im Kurs besprochenen Verfahren ist das gewählte Verfahren am besten zur Extraktion der gewählten Daten geeignet. Bei mehreren möglichen Vorgehensweisen werden Vor- und Nachteile, sowie mögliche Auswirkungen auf die zu extrahierenden Daten kritisch diskutiert. Der rechtliche Rahmen, sowie für das Projekt relevante Beschränkungen in Bezug auf Web Scraping bzw. API-Abfragen werden diskutiert und eingehalten. Der Code ist ausführlich kommentiert und das Vorgehen wird kritisch erläutert und überzeugend begründet. Wenn Fehler/Ausnahmen auftreten, wird der Grund der Fehlermeldung oder Ausnahme erläutert, der Fehler/die Ausnahme wird mit einem geeigneten Vorgehen aufgefangen (z.B. mit Verzweigung, try…except) und es werden die Auswirkungen auf die zu extrahierenden Daten kritisch diskutiert. Programmversagen wird dabei stets registriert (z.B. mit print-Statement). Fremder Code wird nur dann verwendet, wenn der Code für die Umsetzung von Aufgaben, die über die Inhalte des Seminars hinausgehen, gebraucht wird, oder, wenn der Code eine Verbesserung zu den im Seminar vorgestellten Vorgehen darstellt. Fremder Code wird immer zitiert. Der Code folgt immer gängigen stilistischen Konventionen und Regeln. Nach Möglichkeit werden effizientere Lösungen weniger effizienten vorgezogen (in Bezug auf Laufzeit und Speicherplatz).

1.3-2.3

Die zu extrahierenden Daten sind in Bezug auf die Forschungsfrage sinnvoll gewählt. Die Wahl des Verfahrens zur Datenextraktion (API-Abfrage, Web Scraping mit BeautifulSoup oder Selenium) ist überzeugend begründet. Unter den im Kurs besprochenen Verfahren ist das gewählte Verfahren am besten zur Extraktion der gewählten Daten geeignet. Bei mehreren möglichen Vorgehensweisen werden Vor- und Nachteile, sowie mögliche Auswirkungen auf die zu extrahierenden Daten diskutiert. Der rechtliche Rahmen, sowie für das Projekt relevante Beschränkungen in Bezug auf Web Scraping bzw. API-Abfragen werden diskutiert und eingehalten. Der Code ist ausführlich kommentiert und das Vorgehen wird zumeist kritisch erläutert und begründet. Wenn Fehler/Ausnahmen auftreten, wird der Grund der Fehlermeldung oder Ausnahme erläutert, der Fehler/die Ausnahme wird mit einem geeigneten Vorgehen aufgefangen (z.B. mit Verzweigung, try…except) und es werden die Auswirkungen auf die zu extrahierenden Daten diskutiert. Programmversagen wird dabei stets registriert (z.B. mit print-Statement). Fremder Code wird nur dann verwendet, wenn der Code für die Umsetzung von Aufgaben, die über die Inhalte des Seminars hinausgehen, gebraucht wird, oder, wenn der Code eine Verbesserung zu den im Seminar vorgestellten Vorgehen darstellt. Fremder Code wird immer zitiert. Der Code folgt fast immer gängigen stilistischen Konventionen und Regeln.

2.3-3.3

Die Wahl der zu extrahierenden Daten wird begründet. Die Wahl des Verfahrens zur Datenextraktion (API-Abfrage, Web Scraping mit BeautifulSoup oder Selenium) wird begründet. Der rechtliche Rahmen, sowie für das Projekt relevante Beschränkungen in Bezug auf Web Scraping bzw. API-Abfragen werden diskutiert und eingehalten. Der Code ist ausreichend kommentiert und das Vorgehen wird zumeist erläutert und begründet. Wenn Fehler/Ausnahmen auftreten, wird der Grund der Fehlermeldung oder Ausnahme erläutert, der Fehler/die Ausnahme wird mit einem geeigneten Vorgehen aufgefangen (z.B. mit Verzweigung, try…except) und es werden die Auswirkungen auf die zu extrahierenden Daten genannt. Programmversagen wird dabei stets registriert (z.B. mit print-Statement) und es werden die Auswirkungen auf die zu extrahierenden Daten genannt. Fremder Code wird zumeist nur dann verwendet, wenn der Code für die Umsetzung von Aufgaben, die über die Inhalte des Seminars hinausgehen, gebraucht wird, oder, wenn der Code eine Verbesserung zu den im Seminar vorgestellten Vorgehen darstellt. Fremder Code wird immer zitiert. Der Code folgt zumeist gängigen stilistischen Konventionen und Regeln.

3.3-4.0

Die Wahl der zu extrahierenden Daten wird begründet. Die Wahl des Verfahrens zur Datenextraktion (API-Abfrage, Web Scraping mit BeautifulSoup oder Selenium) wird teilweise begründet. Der rechtliche Rahmen, sowie für das Projekt relevante Beschränkungen in Bezug auf Web Scraping bzw. API-Abfragen werden eingehalten. Der Code ist stellenweise kommentiert und das Vorgehen wird ansatzweise erläutert. Wenn Fehler/Ausnahmen auftreten, wird der Grund der Fehlermeldung oder Ausnahme erläutert, der Fehler/die Ausnahme wird behandelt (z.B. mit Verzweigung, try…except) und registriert (z.B. mit print-Statement). Fremder Code wird zumeist nur dann verwendet, wenn der Code für die Umsetzung von Aufgaben, die über die Inhalte des Seminars hinausgehen, gebraucht wird, oder, wenn der Code eine Verbesserung zu den im Seminar vorgestellten Vorgehen darstellt. Fremder Code wird immer zitiert. Der Code folgt stellenweise gängigen stilistischen Konventionen und Regeln.

ab 4.0

Die zu extrahierenden Daten sowie das Verfahren zur Datenextraktion (API-Abfrage, Web Scraping mit BeautifulSoup oder Selenium) werden genannt. Der rechtliche Rahmen, sowie für das Projekt relevante Beschränkungen in Bezug auf Web Scraping bzw. API-Abfragen werden erwähnt und eingehalten. Der Code ist sporadisch kommentiert. Fremder Code wird immer zitiert.

5.0

Der rechtliche Rahmen, sowie für das Projekt relevante Beschränkungen in Bezug auf Web Scraping bzw. API-Abfragen werden nicht eingehalten, der Code ist nicht kommentiert, fremder Code wird nicht immer zitiert und/oder der Code produziert Fehlermeldungen und ist nicht ausführbar.