Post on 17-Sep-2018
NESTOR
SWR Webarchiv
16.10.2013 © SWR
NESTOR Workshop, 16.10.13 in Baden-Baden
Dominik Frey
HA Information, Dokumentation und Archive
des Südwestrundfunks und des Saarländischen Rundfunks
dominik.frey@swr.de
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Agenda
• Webarchiv
– Wayback Integration
– Volltextsuche mit Solr
– Anwendung
• Twitterarchiv
– API Crawler
– Prozess
– Anwendung
• Ausblick: Online Monitoring
2
NESTOR
SWR Webarchiv
16.10.2013 © SWR
SWR Webarchiv
• Seit 2009 Archivierung der Webangebote des SWR u.a. swr.de, swr3.de, einsplus.de
• Crawling-Dienstleister ist die Internet Memory Foundation (IMF)
• Hosting auf SWR internem Server
• Mehr als 12 Terabyte Daten und über 100 Millionen Dokumente im Index
• Zugriff via Wayback und Volltextsuche
3
NESTOR
SWR Webarchiv
16.10.2013 © SWR
SWR Webarchiv – Startseite
4
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Don't make me think!
• „Einfache“ Google Suche als Maßstab
• Suchfunktion erkennt automatisch ob Nutzer Volltextsuche oder URL-Suche meint.
5
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Don't make me think!
• Erweiterte Suchoptionen erst in der Trefferansicht
6
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Szenario – Suche nach URL
7
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Szenario – Suche im Volltext
8
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Ansicht einer archivierten Webseite
9
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Integration von Wayback
• Wayback läuft auf einem Tomcat-Server
• Webarchiv-Anwendung liegt auf einem Apache-Webserver
• Apache-Server mit Proxy auf Wayback-Tomcat webarchiv/wayback/
• Wayback-Suche via Iframe eingebunden
10
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Webarchiv Setup
11
Webarchiv GUI
Proxy / Iframe
Tomcat Tomcat
REST / JSON
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Volltextsuche mit Solr
• Open Source Volltextsuche Solr http://lucene.apache.org/solr/
– sehr gute Performance
– hilfreiche Funktionen, u.a. Facetten, Relevanz-Gewichtung, Caching, mehrere Indizes
(MultiCore)
– umfangreiche Dokumentation
– viele Erweiterungen / Bibliotheken
• Setup-Aufwand
– Externer Programmierer entwickelte ein (W)ARC-Indexierungsprogramm in JAVA
– Der ArcHandler ist auf Basis des SolrRequestHandlers und des ArcReaders aus der Heritrix-
Library implementiert.
12
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Solr Setup – Was soll indexiert werden?
13
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Solr Setup – Was soll indexiert werden?
• Feldtypen
– Text wird analysiert von verschiedene Filtern z.B. WordDelimiterFilter mit Stop-Wörtern,
Synonymen und Stammformreduktion (Stemming)
– String wird nicht analysiert
– Datum
– Zahlen (float, int)
• Feldnamen <field name="ARC_CRAWLING_DATE" type="date" indexed="true" stored="true" multiValued="false"/>
<field name="content" type="text_general" indexed="true" stored="false" multiValued="false"/>
<field name="content_type" type="string" indexed="true" stored="true" multiValued="true"/>
<field name="title" type="text_general" indexed="true" stored="true" multiValued="true"/>
14
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Solr Setup – Was soll nicht indexiert werden?
• Seitenfragmente, z.B. Popups, Mediaplayer, Iframes sollen nicht in den Suchindex
• arcHandler kann verschiedene Inhalte herausfiltern, dazu gibt es drei
Konfigurationsparameter:
– parseMimeTypes
– parseStatusCodes
– rejectByRegex
15
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Solr Setup – Was soll nicht indexiert werden?
<arr name="parseMimeTypes">
<str>text/html</str>
<str>application/xml</str>
</arr>
<arr name="parseStatusCodes">
<str>200</str>
</arr>
<arr name="rejectByRegex">
<str>([0-9]+)(/)(http://www.swr3.de/wraps/suggest.php.*)</str>
<str>([0-9]+)(/)(http://www.swr3.de/)(.*vv=ecard.*)</str>
<str>([0-9]+)(/)(http://www.swr3.de/)(.*vv=zoomPopup.*)</str>
…
16
NESTOR
SWR Webarchiv
16.10.2013 © SWR
User Interface (Grafische Benutzeroberfläche)
• Umgesetzt mit AJAX Solr https://github.com/evolvingweb/ajax-solr
• JavaScript Bibliothek für Kommunikation mit Solr-Server
• Verschiedene Module (Widgets)
– Ergebnisse
– Schlagwörter
– Facetten
– Blätter-Funktion
17
NESTOR
SWR Webarchiv
16.10.2013 © SWR
User Interface – Setup
• Solr-Konfiguration via JavaScript
Manager.init();
Manager.store.addByValue('q', query);
var params = {
'rows' : '10',
'shards' : 's0000632:9080/solr/swr-2009,s0000632:9080/solr/swr-
2010,s0000632:9080/solr/swr-2011,s0000632:9080/solr/swr-2012, …',
'q.op' : 'AND',
'qf' : 'title^50.0 description^50.0 content',
facet: true,
'facet.field': ['Keywords'],
'facet.limit': 10,
'facet.mincount': 1,
…
' };
Manager.doRequest();
18
NESTOR
SWR Webarchiv
16.10.2013 © SWR
User Interface – Suche
19
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Social Media Archivierung
20
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Social Media Archivierung
Vorteil: strukturierte Daten durch offene Programmierschnittstellen (APIs)
z.B. Tweet
"created_at": “Thu Oct 10 11:39:01 +0000 2013",
"id_str": " 388267420743241728 ",
"name": "Linksfraktion" ,
"text": "Ulrich Maurer: #SPD will Macht statt Politikwechsel - http://t.co/gMhCO4tVbK
#btw13 #sondierung",
"hashtags": [#SPD, #btw, #sondierung]
"url": http://t.co/gMhCO4tVbK
"expanded_url": " http://linksfraktion.de/kolumne/spd-will-macht-statt-politikwechsel/ ",
z.B. Facebook Nutzer & FQL
SELECT post_id, created_time, message, attachment FROM stream WHERE source_id=
72401171601
21
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Social Media Archivierung
– Nachteil: Abhängigkeit von privaten Unternehmen
– Rate-Limits
– API-Änderungen
– Lizenzen
22
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Technik & Workflow
API Crawler
Python Bibliotheken für Kommunikation mit Twitter API
Suche, Listen, Nutzer-Informationen
Twython https://github.com/ryanmcgrath/twython
API Blender (ARCOMEM) https://github.com/netiru/apiblender
Daten werden in MySQL-Datenbank gespeichert und von dort in Solr geladen
Vorteil: Datenbearbeitung via SQL und Integration von Offline-Modulen
z.B. Link-Titel extrahieren, Verschlagwortung
Suche mit AJAX Solr
Vorteil: schnelle Suche + einfache Integration in Webarchiv
http://wiki.apache.org/solr/DataImportHandler
23
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Webarchiv Setup
24
Webarchiv GUI
Proxy / Iframe REST / JSON
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Webarchiv Setup + Twitterarchiv
25
Webarchiv GUI
Proxy / Iframe REST / JSON
API Crawler
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Twitterarchiv zur Bundestagswahl
26
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Politiker im Twitterarchiv
27
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Politikerprofil
28
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Was twittern CSU-Politiker zum Veggieday?
29
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Link zu Twitter
30
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Welche Inhalte wurden zum Thema „Lampedusa“ geteilt?
31
NESTOR
SWR Webarchiv
16.10.2013 © SWR
Fazit
• Die Suchmaschine Solr kann ohne großen Aufwand in eine Wayback-Umgebung
eingebunden werden. Viele nützliche Funktionen sind bereits in der Basisversion
vorhanden.
• Social Media Inhalte können via API-Schnittstellen komfortabel archiviert werden. Die
strukturierten Daten vereinfachen die Weiterverarbeitung.
• Solr eignet sich sehr gut, um ein Social Media Archiv aufzubauen. Mit der
Suchmaschine können Tweets recherchiert und angezeigt werden.
• Social Media Archivierung bringt einen deutlichen Recherche- und Image-Mehrwert
für Webarchive.
32