Das sich gerade auf der Zielgerade befindliche Sommersemester 2020 war bzw. ist stark von Corona geprägt. Ein persönlicher physischer Kontakt zwischen Lehrpersonal und Studierenden bzw. zwischen den Studierenden war weitestgehend unmöglich.
Gerade bei der Bearbeitung von studentischen Projekten in Teams scheint dies auf den ersten Blick ein KO-Kriterium zu sein. Am Beispiel des Projekts Wirtschaftsinformatik 1 im Bachelor-Studiengang Wirtschaftsinformatik an der HFT Stuttgart, bei dem durch 6 Studierenden-Teams mit jeweils 4-6 Personen bereits im 2. Studiensemester einzelne Komponenten eines ERP-Systems für ein Modell-Unternehmen mit Java, Swing und MySQL entwickelt wurden, kann man jedoch sehen, dass dies nicht der Fall ist … im Gegenteil: die Ergebnisse waren für das 2. Semester im Durchschnitt sehr ordentlich und durchaus gleichwertig zu den früheren Präsenz-Semestern.
Oftmals besteht die Anforderung, Daten aus bestehenden Webseiten (z.B. soziale Netzwerke) automatisiert auszulesen bzw. in diese zu schreiben.
Der saubere (und auch stabilere) Weg dazu ist sicherlich die Nutzung der entsprechenden APIs, die inzwischen von einem Großteil der relevanten Seiten zur Verfügung gestellt werden (siehe auch ein früherer Artikel).
U.a. kann man mit diesem Tool bzw. der Komponente „WebDriver“ unterschiedliche Browser (insb. Firefox) „fernsteuern“ und somit automatisiert auf Webseiten lesend oder schreibend zugreifen. Die Webseite selbst kann den Unterschied i.d.R. nur schwer feststellen, z.B. durch Analyse der Tastengeschwindigkeit.
Um Selenium für diesen Anwendungsfall zu testen, habe ich eine kleine Java/Swing-Anwendung erstellt, mit der es zu Testzwecken möglich ist, automatisiert einen Tweet in Twitter einzustellen (siehe Abbildung und Source-Ausschnitt darunter).
Grundsätzlich sollten natürlich sowohl bei der Nutzung von APIs als auch von Web-Automatisierungs-Tools die Nutzungsbedingungen der jeweiligen Webseite berücksichtigt werden.
Testprogramm zum Zugriff auf Twitter über Selenium WebDriver
Hier noch der Codeausschnitt für die Nutzung des WebDrivers (kann man sicher eleganter und besser lösen, war aber nur ein Test):
We use technologies like cookies to store and/or access device information. We do this to improve browsing experience and to show personalized ads. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Funktional
Immer aktiv
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes.The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.