social bots · 2020. 3. 8. · kommunikation in rechnernetzen - client-server-kommunikation -...
TRANSCRIPT
![Page 1: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/1.jpg)
Social BotsEine Unterrichtseinheit zur Netzwerkkommunikation
Benjamin Knorr und Peter Brichzin, 07.03.2020
![Page 2: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/2.jpg)
Zielsetzungen der UnterrichtseinheitSocial Bots
- Sensibilisierung für Existenz- Verständnis der Funktionsweise
durch Programmieren eines eigenen Bots
- Bewertung der EinflussmöglichkeitenKommunikation in Rechnernetzen
- Client-Server-Kommunikation- Hypertext Transfer Protokoll- Programmierschnittstellen (API)
Algorithmen - API- Datenformat
JSON
![Page 3: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/3.jpg)
Kommunikation mit Webservern
![Page 4: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/4.jpg)
Kommunikation mit WebservernGET und POST Anfragen des Protokolls HTTP
![Page 5: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/5.jpg)
Kommunikation mit WebservernSichtbar machen über das
Netzwerk-Tool des Browsers (Öffnen mit F12 -> Netzwerkanalyse )
![Page 6: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/6.jpg)
GET-Anfrage
www.socialbotnet.de
![Page 7: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/7.jpg)
Kommunikation mit WebservernGET und POST Anfragen des Protokolls HTTP
/pinnwand/Luke
![Page 8: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/8.jpg)
Unterschiedliche SchnittstellenBots verwenden das selbe Anfrageprotokoll, aber andere Schnittstellen
![Page 9: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/9.jpg)
![Page 10: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/10.jpg)
AusprobierenErstellen Sie einen Benutzer auf www.socialbotnet.de und probieren Sie ein paar Funktionen des Netzwerks im Browser aus.
- Webaufruf der Seite (mit und ohne Netzwerkanalyse)- Beiträge schreiben und liken (mit und ohne Netzwerkanalyse)- API Aufruf im Browser (z.B. /api/posts oder /api/users)
![Page 11: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/11.jpg)
Netzwerkkommunikation in Java mit Hilfsklasse
![Page 12: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/12.jpg)
Ausprobieren1. Laden Sie die Projektvorlage “Projekt mit Objekten” von der Materialseite
herunter.
2. Probieren Sie die POST-Schnittstellen im Projekt aus, um Beiträge zu schreiben oder zu liken. (Falls nötig: Sie können die GET- Schnittstellen im Browser aufrufen, um eine Datenansicht zu erhalten um z.B. ids zu sehen)
![Page 13: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/13.jpg)
Kurze Einführung in die Technik: POSTPOST-Anfragen: Senden von Daten an den Server.
Anmerkung: Code-Vorlage von https://www.socialbotnet.de/material mit Hilfsklasse “NetzwerkZugriff” für Kommunikation mit Web-Servern bereitstellt.
![Page 14: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/14.jpg)
![Page 15: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/15.jpg)
AusprobierenVerarbeiten Sie die Daten einer GET-Anfrage
Zum Beispiel:
- Alle Posts liken, die ein bestimmtes Wort enthalten- Den Post eines anderen Benutzers kopieren und posten- ...
![Page 16: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/16.jpg)
Kurze Einführung in die Technik: GET (1/2)GET-Anfragen: Abrufen von Daten vom Server.
![Page 17: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/17.jpg)
Kurze Einführung in die Technik: GET (2/2)GET-Anfragen: Abrufen von Daten vom Server.
Mit den verarbeiteten Daten können dann neue POST-Anfragen erstellt werden.
![Page 18: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/18.jpg)
Fortgeschrittene AnwendungenAndere Schnittstellen des Servers
Browser verwenden gleiches Protokoll (HTTP) => Erkenntnis: Auch mit den Browser-Schnittstellen kann genau so kommuniziert werden!
Beispiel: POST-Anfrage an https://www.socialbotnet.de/registrieren, mit Registrierungs-Daten wie im Browser -> Ermöglicht automatisches Erstellen von Bots.
Schutzmöglichkeiten: z.B. CAPTCHAs (bei anderen Webseiten üblich)
![Page 19: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/19.jpg)
Fortgeschrittene AnwendungenAndere JSON-Webseiten
Mit der Verarbeitung von JSON-Daten sind zahlreiche Webseiten anbindbar
Beispiel: https://openweathermap.org/api stellt aktuelles Wetter per JSON-API zur Verfügung.
![Page 20: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/20.jpg)
MaterialWebseite: https://www.socialbotnet.de
Projektvorlage und Handouts zur selbstständigen Erarbeitung: https://www.socialbotnet.de/material
Alles Weitere:
● Weiterentwicklung des Codes auf Github (-> Siehe Link in Footer, Feedback & Bugreports herzlich willkommen!)
● .jar Datei für lokales SocialBotNet ebenfalls auf Github verfügbar.
![Page 21: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/21.jpg)
Vielen Dank für Ihre Aufmerksamkeit
Ich freue mich über Feedback, Anregungen und Fragen
E-Mail Kontakt: [email protected]
![Page 22: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/22.jpg)
Anhang: JSON-FormatZwei Grundstrukturen: Objekte mit Key-Value Paaren und Arrays aus Objekten
![Page 23: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat](https://reader035.vdokument.com/reader035/viewer/2022071408/6100914f56454e24db4daed1/html5/thumbnails/23.jpg)
Anhang: JSON in Java