Zum Inhalt

Startseite #

Dies ist die Dokumentation über die SNS-API, welche über GraphQL und REST abgerufen werden kann. Wie man mit dem Projekt startet kann unter Getting Started nachgelesen werden.

Was ist SNS?#

Damit man dieses Projekt versteht, ist es notwendig, dass ein Grundverständnis von Social Network Scraper vorhanden ist.

Soziale Netzwerke sind Plattformen, auf welchen Menschen sich registrieren können, um sich mit anderen Menschen zu verbinden. Auf den Plattformen können sich Menschen mit ihren Freunden, Familienmitgliedern, Freunden von Freunden, etc. verbinden. Es können Texte, Bilder, Videos und andere Inhalte veröffentlicht werden. Diese können dann von anderen Menschen gelesen, kommentiert, bewertet und anderweitig verwendet werden.

Ein Web Scraper ist ein Programm, welches Daten von einer Webseite extrahiert. Es werden dabei öffentliche Informationen ausgelesen, damit sie später weiterverarbeitet werden können. Die Daten können ausgewertet werden, um sie zu analysieren und Metriken zu erstellen. Meist werden diese Daten automatisch via einen Bot oder Web Crawler, gesammelt. Ein Anwendungsfall sind zum Beispiel Suche Engines, welche über Scraper die Webseiten indexieren.

Es gibt jedoch Richtlinien, welche die Plattformen vorschreiben. Dadurch sollte verhindert werden, dass die Webseite dadurch nicht überlastet wird. Aus diesem Grund muss die Anzahl der Anfragen an eine Webseite von Scrapern begrenzt werden. Zudem dürfen Copyrights nicht verletzt werden. Laut dem Gesetz ist das Scrapen von Webseiten eine Grauzone, welche nicht wirklich definiert ist.

Ein SNS ist somit ein Scraper, welche von Sozialen Netzwerken Daten extrahiert. In der Coding Community gibt es sehr viele, welche sich mit dem Scrapen von Webseiten auseinandersetzen. Auf GitHub gibt es diverse Beispiele dazu.

Zielsetzung#

Diese Dokumentation verfügt über eine Zielsetzung, welche den Umfang und die Anforderungen an dieses Projekt erläutert. Diese werden auch verwendet um zu Überprüfen ob das Projekt korrekt gebaut wurde.

Testprotokoll#

In einem Testprotokoll werden zudem Testfälle und deren Ergebnisse festgehalten. Sie werden seit Beginn des Projektes weitergeführt und ständig angepasst. Zur Übersichtlichkeit sind sie in Kategorien die Kategorien Allgemeine, API-Key, Twitter und Instagram unterteilt. Am Ende der Seite befinden sich die Resultate dieser Tests.

Dokumentation#

In dieser Dokumentation werden die Schnittstellen, das Erklärungen, das ERD und weitere Abgaben zu diesem Projekt erläutert. Diese Dokumentation ist auf Markdown basiert und wurde mithilfe MkDocs erstellt. Sie sollte den zugehörigen Code erklären, um sich einen Überblick über die Funktionen zu verschaffen. Zudem aufzeigen, was für Möglichkeiten und Abfragen es gibt.

Zusätzlich zu dieser Dokumentation gibt es auch noch eine Inline Dokumentation. Mithilfe von JavaDoc ist jede Funktion klar beschrieben, sodass auch Externe sich schnell einarbeiten können und den Code verstehen. In diesem Projekt wird nach Clean-Code-Richtlinien gearbeitet und formatiert, was mit der VS-Code Extension SonarLint überprüft wurde.

Diese Dokumentation beinhaltet nicht nur eine Erklärung der API sondern auch einige Beispiele und Diagramme.