Presentation time!
Datafying Bärn
Wer hat wann und wo in Bern gewohnt? Daten in den Adressbüchern der Stadt Bern (1900-1945) strukturieren.
Was?
Die Universitätsbibliothek Bern hat in Zusammenarbeit mit dem Stadtarchiv Bern die Adressbücher der Stadt Bern vollständig digitalisiert. Hier sind alle Einwohner, Gewerbe und Einrichtungen mit Adressen im alten Stadt-Bern verzeichnet. Wir beschränken uns in der Challenge auf die Einwohnerverzeichnisse der Jahrgänge 1900-1945 - diese verfügen zudem über (sehr interessante :) Berufsangaben der EinwohnerInnen.
Diese Angaben sollen in eine strukturierte Form überführt werden, damit sie für Analysen und weitere Anwendungen nutzbar werden. Denkbar ist ein einfaches Format wie z.B. CSV oder JSON, das die Daten Name, Vorname, Beruf, (Titel/Anrede), (Quartier), Strasse, Hausnummer, (Telefonnummer) enthält.
Wie sieht so ein digitalisiertes Adressbuch aus? Hier ist ein Beispiel. Die Adressbücher sind nicht nur so kapitelweise strukturiert zugänglich, sondern Bildateien, Original-OCR-Dateien, TXT-Dateien und PDFs (je Kapitel) sind über Schnittstellen verfügbar.
Und wo ist das Problem?
Die Datenelemente der Personen sind in der Regel mit Kommata getrennt, die Anzahl der Datenelemente kann jedoch variieren. Es werden viele Abkürzungen verwendet und es gibt dann und wann OCR-Fehler. Neben Personen tauchen auch Einrichtungen auf.
Materialien
📦 File: Infomaterial (PDF) zu Datenzugängen, Schnittstellen & Formaten
📦 File: Tabelle (CSV) mit IDs der Einwohnerverzeichnisse je Jahrgang
📦 Aktuelles amtliches Verzeichnis der Gebäudeadressen: Zur Kontrolle der OCR-erfassten und strukturierten Adressen, Hinweis: Spalte COM_FOSNR nach 351 (BFS-Gemeindenummer für Bern) filtern
📦 File: Familiennamenbuch der Schweiz (CSV) [Familiennamenbuch online] als Kontrollvokabular
Ausgangsdaten: Berner Adressbücher
- alle Bände (Jahrgänge) der Berner Adressbücher auf einen Blick auf e-rara
- Beispiel Seite JPEG, max. Auflösung
- Beispiel Seite ALTO-XML, original OCR-Datei
- Beispiel Seite TXT, Inhalt = original OCR-Daten
- Beispiel Kapitel Einwohnerverzeichnis, Textlayer = original OCR-Daten
Quellen für die Auflösung von Abkürzungen, historische Wörterbücher, topografische Informationen
- Sammlung von Thomas im Slack-Channel #datafying_bärn
Bern Address Book
Setup
$ git clone https://github.com/brawer/bern-addresses.git
$ cd bern-addresses
$ python3 -m venv venv
$ venv/bin/pip3 install -r requirements.txt
$ venv/bin/python3 src/fetch.py
Event finished
Add more family names from Wikidata, manually checked by Thomas Hayoz (@brawer)
Verify
Write CSV output file with geocoded addresses (@brawer)
Verify
Joined the team
Minor fixes to 1934-12-15.txt (#7) (@pdaengeli)
Fix crash due to malformed input in 1934 data file (@brawer)
Extract phone numbers from 1900 to 1917, for address cleanup (@brawer)
Remove "Strasse" as family name (@brawer)
Manual fixes by Jovan G. to 1934-12-15.txt, then applied OCR fixes (#6)
Manual fixes by Jovan G.
Applied OCR fixes to 1934-12-15.txt (@pdaengeli)
Merge pull request #5 from pdaengeli/main
Applied OCR corrections (@pdaengeli)
Applied OCR corrections (@pdaengeli)
Minor fixes for 1908 (@brawer)
Minor fixes for 1907 (@brawer)
Minor fixes for 1906 (@brawer)
Minor fixes for 1905 (@brawer)
Write CSV file with output addresses (@brawer)
Add Einstein as family name, for demo (@brawer)
Merge pull request #4 from pdaengeli/main
Applied OCR corrections (@brawer)
Applied OCR corrections (@pdaengeli)
Merge pull request #3 from pdaengeli/main
Applied misc OCR fixes (@brawer)
Integrated brawer's fixes to 1944 file (@pdaengeli)
Fix typos in 1944 (@brawer)
OCR corrections 1900-02-15.txt (@pdaengeli)
Merge branch 'main' into main (@pdaengeli)
Fix some typos in 1900 address book (@brawer)
Applied misc OCR fixes (cont.) (@pdaengeli)
Applied misc OCR fixes (@pdaengeli)
Cleanup: Kirchenfeld (@brawer)
Cleanup: Gehülfe, gehülfe (@brawer)
Cleanup: gasse + number (@brawer)
Cleanup: Misc. OCR fixes (@brawer)
Cleanup: gasse (@brawer)
Cleanup: Biihl -> Bühl (@brawer)
Merge pull request #2 from pdaengeli/main
Add OCR cleanup script (@brawer)
Add OCR cleanup script
This should tackle some more or less common OCR mistakes in the text files.
May be run any time and shouldn't break anything, but never wrong to have a look at the diff. (@pdaengeli)
Print out most frequent unknown family names (@brawer)
Fix some typos in 1944 (@brawer)
Add fixes for 1944, by Daniela Rölli (@brawer)
Add fixes for 1904, by Thomas Hayoz (@brawer)
Fix some typos (@brawer)
Merge pull request #1 from random-ao/ao
Add BE only version of pureadrbe.csv (ch.swisstopo.amtliches-gebaeudeadressverzeichnis) (@brawer)
Add BE only version of pureadrbe.csv (ch.swisstopo.amtliches-gebaeudeadressverzeichnis) (@A)
Verify
Small data view
Data checking...
Our challenge is progressing
Repository updated
Print failing lines (@brawer)
Fix a couple of typos (@brawer)
Add missing family names from "Familiennamenbuch der Schweiz" (@brawer)
Fix typos A-E in volume 1934-12-15 (@brawer)
Emit all texts to be proofread (@brawer)
Ask
Add content to be proofread (@brawer)
Improve text extraction (@brawer)
Ask
Many ideas for further data processing: cleaning, geo referencing, visualization, search index...
Add mapping file with date, page ID, and page label (@brawer)
Ask
Working on data extraction from the OCRified Adressbooks from 1900 till 1940. Goal: one string for every entry. Next step: data segmentation.
Event started
Daniela kicks off the Hackdays with the Datafying Bern challenge
Ask
Python-Skript zum Herunterladen und Parsen der OCR-Texte: https://github.com/brawer/bern-addresses
Joined the team
Joined the team
Joined the team
Joined the team
Pour vous inspirer: https://lausanne1830.ch/making-of/