Hilft Dir dabei, Deine BÜNDNIS 90/DIE GRÜNEN Website zu optimieren https://green-spider.netzbegruenung.de/
Go to file
Marian Steinbach 894711a2d8
Entfernen obsoleter Inhalte aus Devops script und README (#329)
* Remove screenshotter, fix job name argument

* Remove Kubernetes info from README
2024-02-22 09:43:22 +01:00
.github Workflow zum Erzeugen und Veröffentlichen eines Container Image auf ghcr.io (#327) 2024-02-22 09:16:44 +01:00
checks Make and use a versioned docker image (#279) 2022-10-24 21:35:15 +02:00
config Job-Verwaltung mit RQ, und vieles mehr (#149) 2021-11-11 20:15:43 +01:00
devops Entfernen obsoleter Inhalte aus Devops script und README (#329) 2024-02-22 09:43:22 +01:00
export Fix full JSON export 2019-05-04 23:00:00 +02:00
kubernetes Change quay.io to ghcr.io (#328) 2024-02-22 09:32:49 +01:00
manager Change quay.io to ghcr.io (#328) 2024-02-22 09:32:49 +01:00
rating check for gruene.social instead of Google Plus (#267) 2022-09-16 10:13:49 +02:00
spider Add tests action (#273) 2022-10-21 16:27:15 +02:00
.dockerignore Job-Verwaltung mit RQ, und vieles mehr (#149) 2021-11-11 20:15:43 +01:00
.gitignore Make and use a versioned docker image (#279) 2022-10-24 21:35:15 +02:00
.travis.yml Fehlerbehebung im url_reachability check (#108) 2019-04-19 00:35:28 +02:00
Dockerfile Chromium und Alpine update (#319) 2024-02-21 09:19:33 +01:00
KRITERIEN.md Liste der Qualitätskriterien aktualisiert (#155) 2020-03-24 23:26:57 +01:00
LICENSE Create LICENSE 2018-08-28 21:04:20 +02:00
Makefile Workflow zum Erzeugen und Veröffentlichen eines Container Image auf ghcr.io (#327) 2024-02-22 09:16:44 +01:00
README.md Entfernen obsoleter Inhalte aus Devops script und README (#329) 2024-02-22 09:43:22 +01:00
cli.py Job-Verwaltung mit RQ, und vieles mehr (#149) 2021-11-11 20:15:43 +01:00
docker-compose.yaml Change quay.io to ghcr.io (#328) 2024-02-22 09:32:49 +01:00
index.yaml Add webapp deployment (#87) 2018-11-20 19:54:23 +01:00
job.py Change quay.io to ghcr.io (#328) 2024-02-22 09:32:49 +01:00
k8s-job-manager.py Automatisierung für Job-Erzeugung und -Ausführung in Kubernetes (#232) 2022-10-18 09:00:31 +02:00
requirements.txt Bump chardet from 3.0.4 to 5.2.0 (#324) 2024-02-21 11:55:34 +00:00

README.md

Green Spider

Green Spider prüft Websites von Bündnis 90/Die Grünen Gliederungen auf Einhaltung ausgewählter Standards. Die Ergebnisse sind unter green-spider.netzbegruenung.de einsehbar.

Dieses Repository beinhaltet Code für den Spider, der Websites besucht und prüft.

Green Spider ist ein Projekt von netzbegrünung e. V..

Übersicht aller Green Spider Repositories

Green Spider verbessern

Du kannst über den Chatbegrünung-Kanal #green-spider Probleme melden, Fragen stellen und Verbesserungsvorschläge machen. Wenn Du möchtest, kannst Du auch die Issues hier in diesem Repository einsehen ud kommentieren oder selbst ein Issue anlegen.

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 Abhängigkeiten 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 Datenbank.

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)/screenshots:/screenshots \
  -v $(pwd)/volumes/chrome-userdir:/opt/chrome-userdir \
  --shm-size=2g \
  ghcr.io/netzbegruenung/green-spider:latest python3 cli.py \
    --credentials-path /secrets/datastore-writer.json \
    --loglevel debug \
    spider --job '{"url": "https://gruene-porta-westfalica.de/home/", "city": "Porta Westfalica", "country": "DE", "district": "Minden-Lübbecke", "level": "DE:ORTSVERBAND", "state":" Nordrhein-Westfalen", "type": "REGIONAL_CHAPTER"}'