Datenbasis

Zunächst wollen wir die Datenbasis - bestehend aus 18010 Rezensionen wissenschaftlicher Publikationen aus dem Bereich der Sozialen Arbeit, welche wir von einer Webseite gesammelt haben - beschreiben. Wir werden darauf eingehen wie die Rohdaten erhoben, und welche Merkmale zum Zwecke einer anschließenden Analyse extrahiert wurden.

Webseiten Herunterladen

Eine Webseite besteht (stark vereinfacht gesagt) aus einer oder mehreren Textdateien. Wenn Ihr Browser eine Seite besucht, fordert er den Server der Webseite auf, ihm eine Kopie dieser Textdatei zuzusenden. Wenn Sie in ihrem Browser Strg+U drücken, können sie sich diesen Text (z.B. dieser Seite) ansehen. Das Format dieses Textes nennt man HTML, und es beschreibt dem Browser wie die Webseite dargestellt werden soll. Die Datenbasis besteht also in diesem Fall aus den abgespeicherten HTML-Dateien für jede Rezension.

Alle Rezensionen finden

Damit ein Server einem die richtige Textdatei zuschickt, muss man ihm mitteilen, welche genau man haben möchte. Die geschieht über die sogenannte URL - umgangssprachlich auch Link genannt. Wenn wir also alle Rezensionen herunterladen wollen, brauchen wir zu jedem Rezension die zugehörige URL. Es stellt sich also die Frage wie wir die URL zu jeder verfügbaren Seite erhalten. Glücklicherweise ist das bei der untersuchten Seite relativ einfach. Wenn man sich die URLs einiger Rezensionen anschaut, fällt auf, dass sie einem bestimmten Muster folgen: alle enthalten eine Zahl. Bei neueren Rezensionen ist diese höher, bei älteren niedriger. So hat z.B. die erste Rezension die URL

https://www.xxx.de/rezensionen/1.php

ein neuerer hingegen die folgende:

https://www.xxx.de/rezensionen/26542.php

Es liegt also die Vermutung nahe, dass intern jede Seite eine Nummer besitzt, die die dazugehörige Rezension eindeutig identifiziert. Der jeweilige Artikel ist über die URL erreichbar, welche an der entsprechenden Stelle diese Zahl enthält. Folglich können wir nach dieser Vorschrift zu jedem existierenden Artikel eine URL konstruieren. Es ist (relativ) einfach, ein kurzes Programm in der Programmiersprache Python [1] zu schreiben, dass alle Zahlen von 1-27000 durchgeht, die entsprechende URL konstruiert und anschließend den HTML-Text vom Server abfragt und in einer Datei speichert. Dieses Programm könnte wie Folgt aussehen:

        
import requests

for i in range(1, 27000):
    url = f"https://www.xxx.de/rezensionen/{i}.php"
    response = requests.get(url)
    if response.status_code != 200:
        print(f"Could not download '{url}' status code: {response.status_code}")
    else:
        filename = f"rezension_{i}.html"
        with open(filename, "w") as f:
            f.write(response.content)
        
    
Aufbereitung

Das Herunterladen aller 27000 Seiten - von denen 6719 nicht gefunden werden konnten - erzeugt HTML-Dateien mit einer Größe von insgesamt etwa 1 GB. Diese werden im Folgenden durch uns mithilfe der Programm-Bibliothek Beautiful Soup [2] verarbeitet. Diesen Schritt nennt man parsen. Es kann vorkommen, dass einige der Dateien beschädigt sind oder Fehler enthalten. Während ein Browser relativ ''klug'' ist und versuchen kann mit solchen Fehlern umzugehen um den Inhalt der Webseite darzustellen, liefert die von uns verwendete Software in solchen Fällen keine sinvollen Ergebnisse. Im den folgenden Verarbeitungsschritt ignorieren wir daher alle 714 Artikel, die nicht richtig durch die Programmbibliothek geparsed werden können. Zusätzlich entfernen wir die Rezensionen der (mit Abstand) aktivsten Person aus dem Datensatz, da diese alleine ca. 6 % aller Rezensionen verfasst hat, und wir die Auswertung nicht zu sehr durch einzelne Personen verzerren lassen wollen.

18010
1557
714
6719

Features

Nachdem wir die HTML-Dateien gesammelt haben können wir überlegen:

  1. welche Informationen bzw. Merkmale - genannt Features in diesen potentiell vorhanden sind,
  2. welche davon wir für die Analyse verwenden möchten, und
  3. wie wir sie aus dem HTML extrahieren.

Einfache Features

Jede Rezension verfügt über einen Kopfteil, der z.B. wie folgt aussieht:

Gereon Heuft, Andreas Kruse, Hartmut Radebold: Lehrbuch der Gerontopsychosomatik und Alterspsychotherapie. Ernst Reinhardt Verlag (München) 2006. 2., überarbeitete und erweiterte Auflage. 379 Seiten. ISBN 978-3-497-01536-8. 34,90 EUR.

Offensichtlich enthält diese Textzeile mindestens die folgenden Informationen über die rezensierte Publikation:

Wenn wir die Kopfzeilen verschiedener Rezensionen miteinander vergleichen, können wir feststellen, dass die einzelnen Merkmale bei allen Artikeln an der selben Stelle stehen. Dadurch ist es relativ einfach, sie mithilfe eines Programmes auszulesen.

Geschlecht

Jede Rezension enthält einen Abschnitt ähnlich dem folgenden:

Rezensent
Max Musterman
Fachhochschule Dortmund, Fachbereich Sozialarbeit

Dies erlaubt es uns, den Namen des/r Verfasser_in auszulesen. Bis Ende 2018 enthielt zudem jeder Artikel (indirekt) die Information, ob es sich bei dem/der Verfasser_in um einen ''Rezensent'' oder eine ''Rezensentin'' handelt. Seit einiger Zeit verwendet die untersuchte Webseite nur noch die generische formulierung ''Rezension von'', welche keine Rückschlüsse mehr auf das Geschlecht der betreffenden Person zulässt. Da wir die Artikel bereits vor dieser umstellung abgerufen haben, stehen uns diese Informationen bis zu einem gewissen Datum zur Verfügung.

Akademischer Grad

Zusätzlich zu ihrem Namen geben einige Autor_innen davor einen Titel (wie z.B. Dr., Prof. oder Dipl-Psychologin) an. Diese lassen sich ebenfalls auslesen und anhand bestimmten Heuristiken in Kategorien einteilen.

Hinterlegte Stichworte

Schaut man in den Quelltext einerr Rezension, kann man folgende Zeile finden:

<meta name="keywords" content="Alterskrankheit;Psychosomatische Krankheit;Psychotherapie"/>

Diese Stichwörter wurden den rezensierten Publikation durch die Deutsche Nationalbibliothek zugeordnet, und zu den Meta-Daten der Rezensionen hinzugefügt.

Text

Der Text einer Rezension kann selbst als Feature betrachtet werden. Allerdings können aus dem Text weitere Merkmale extrahiert werden, beispielsweise dessen Länge. Zudem lassen sich durch verschiedene statistische Verfahren relevante Stichwörtet aus Texten exrahieren. Wir haben Tf-idf [3] benutzt, welches Wörtern eines Textes eine Relevanz zuordnet. Die 5 Wörter mit den höchsten Relevanz-Scores wurden von uns für die Auswertung genutzt.

Wirkensort

Jede Rezension entgält eine kurze Selbstbeschreibung des/der Verfasser_in. Häufig enthalten diese den Namen einer Institution, so wie eines Ortes. Vergleicht man jedes Wort in der Beschreibung mit einer Liste von Städten in Deutschland, lässt sich der Wirkensort der beschriebenen Person ermitteln. Viele Autor_innen verzichten jedoch auf eine solche Selbstbeschreibung, oder geben nur den aktuellen Beruf an. In vielen Fällen liefert die Suche auch mehrere Treffer, weil entweder mehrere Städte angegeben sind, oder mehrere gleichnamige Städte existieren. Die so erhobenen Daten sind also als sehr unpräzise anzusehen und können höchstens eine Tendenz aufzeigen.

Datenstruktur

Um effektiv mit den extrahierten Daten arbeiten zu können, sortieren wir sie in eine tabellarische Datenstruktur ein. Die Programmbibliothek Pandas [4] stellt Programmierern entsprechende Funktionalität zur Verfügung. In dieser Tabelle entspricht jede Rezension jeweils einer Zeile, und jede Spalte entspricht einem Feature.

id Titel Verlag Erscheinungsjahr ... Seiten
1 Lehrbuch der Gerontopsychosomatik und Alterspsychotherapie Ernst Reinhardt Verlag 2006 ... 379
2 Erfahrungen sexualisierter Gewalt in der Lebensgeschichte alter Frauen. Ansätze für eine frauenorientierte Altenarbeit. Mit einem Vorwort von Luise F. Pusch. Mabuse-Verlag GmbH 2000 ... 134
... ... ... ... ... ...
26540 Politik in der digitalen Gesellschaft. Zentrale Problemfelder und Forschungsperspektiven. transcript 2019 ... 332

Weiter

Referenzen

[1] Wikipedia Python -
[2] Wikipedia Beautiful Soup Python Bibliothek -
[3] Wikipedia Tf-idf-Maß -
[4] Wikipedia Pandas (Software) -