+ All Categories
Home > Documents > Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation -...

Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation -...

Date post: 01-Mar-2021
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
23
Social Bots Eine Unterrichtseinheit zur Netzwerkkommunikation Benjamin Knorr und Peter Brichzin, 07.03.2020
Transcript
Page 1: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat

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

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

Kommunikation mit Webservern

Page 4: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat

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

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

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

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

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
Page 10: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat

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

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

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

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
Page 15: Social Bots · 2020. 3. 8. · Kommunikation in Rechnernetzen - Client-Server-Kommunikation - Hypertext Transfer Protokoll - Programmierschnittstellen (API) Algorithmen - API - Datenformat

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

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

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

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

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

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

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

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

Anhang: JSON in Java


Recommended