Hilft Dir dabei, Deine BÜNDNIS 90/DIE GRÜNEN Website zu optimieren https://green-spider.netzbegruenung.de/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
dependabot-preview[bot] abb6fa5460
Upgrade to GitHub-native Dependabot (#203)
1 year ago
.github Upgrade to GitHub-native Dependabot (#203) 1 year ago
checks Problembehebung mit Exception-Daten im Ergbebnis, die nicht geschrieben werden können, und Spidern einzelner Sites (#132) 3 years ago
config changed gcms ip (#199) 1 year ago
devops Add required secrets for screenshots job 3 years ago
export Fix full JSON export 3 years ago
jobs Refactor and modularize spider (#70) 4 years ago
kubernetes Kubernetes manifests: replace jobs with cronjobs 4 years ago
rating Prüfe DNS auf IPv6 AAAA Record (#124) 3 years ago
spider Problembehebung mit Exception-Daten im Ergbebnis, die nicht geschrieben werden können, und Spidern einzelner Sites (#132) 3 years ago
.dockerignore Refactor and modularize spider (#70) 4 years ago
.gitignore Update ignore list 3 years ago
.travis.yml Fehlerbehebung im url_reachability check (#108) 3 years ago
Dockerfile Upgrade to alpine 3.9 (#135) 3 years ago
KRITERIEN.md Liste der Qualitätskriterien aktualisiert (#155) 2 years ago
LICENSE Create LICENSE 4 years ago
Makefile Set share memory size 3 years ago
README.md Problembehebung mit Exception-Daten im Ergbebnis, die nicht geschrieben werden können, und Spidern einzelner Sites (#132) 3 years ago
cli.py Problembehebung mit Exception-Daten im Ergbebnis, die nicht geschrieben werden können, und Spidern einzelner Sites (#132) 3 years ago
index.yaml Add webapp deployment (#87) 4 years ago
requirements.txt Merge pull request #169 from netzbegruenung/dependabot/pip/urllib3-1.25.9 2 years ago

README.md

Green Spider

Initiative und Tools zur Förderung eines benutzer*innenfreundlichen Auftritts von Bündnis 90/Die Grünen im Web.

Zur Auswertung: https://green-spider.netzbegruenung.de/

Tools

Aktivitäten

Es ist geplant, auf Basis der gesammelten Informationen (siehe Spider) Informationen an die Betreiber*innen der Websites zu versenden. Hierzu müssen Prozesse erarbeitet und vermutlich weitere Tools geschaffen werden.

Community

Green Spider ist ein Projekt des netzbegrünung e. V. -- Mitwirkung ist herzlich willkommen.

Zur Kommunikation dient der Chatbegrünung-Kanal #green-spider sowie die Issues hier in diesem Repository.

Betrieb

Alle Informationen zum Betrieb befinden sich im Verzeichnis devops.

Entwicklung

Green Spider ist in Python 3 geschrieben und wird aktuell unter 3.6 getestet und ausgeführt.

Aufgrund zahlreicher Dependencies empfiehlt es sich, den Spider Code lokal in Docker auszuführen.

Das Image wird über den folgenden Befehl erzeugt:

make

Das dauert beim ersten Ausführen einige Zeit, wiel einige Python-Module das Kompilieren diverser Libraries erfordern. Nach dem ersten erfolgreichen Durchlauf dauert ein neuer Aufruf von make nur noch wenige Sekunden.

Tests ausführen

In aller Kürze: make test

Spider testweise ausführen (Debugging)

Der Spider kann einzelne URLs verarbeiten, ohne die Ergebnisse in eine Datenbank zu schreiben. Am einfachsten geht das über den make spider Befehl, so:

make spider ARGS="--url http://www.example.com/"

Ohne ARGS aufgerufen, arbeitet der Spider eine Jobliste ab. Dies erfordert Zugriff auf die entsprechende Datenank.

Wenn nur eine einzelne Site gespidert werden soll, die Ergebnisse aber in die Datenbank geschrieben werden sollen, kann der Spider so mit --job und einem JSON-Object aufgerufen werden (Beispiel):

docker run --rm -ti \
  -v $(pwd)/volumes/dev-shm:/dev/shm \
  -v $(pwd)/secrets:/secrets \
  -v $(pwd)/volumes/chrome-userdir:/opt/chrome-userdir \
  --shm-size=2g \
  quay.io/netzbegruenung/green-spider:latest \
    --credentials-path /secrets/datastore-writer.json \
    --loglevel debug \
    spider --job '{"url": "https://xn--grne-porta-westfalica-9hc.de/", "meta": {"city": "Porta Westfalica", "country": "DE", "district": "Minden-Lübbecke", "level": "DE:ORTSVERBAND", "state":" Nordrhein-Westfalen", "type": "REGIONAL_CHAPTER"}}'