Hilft Dir dabei, Deine BÜNDNIS 90/DIE GRÜNEN Website zu optimieren https://green-spider.netzbegruenung.de/
Go to file
Marian Steinbach 0efab3295c
Chromium und Alpine update (#319)
* Update base image to alpine v3.19

* Update Chromium to 121

* Remove libssl1.1 (no longer available in alpine 3.19)

* Add --break-system-packages to pip install commands

* Print debugging info

* Upgrade actions/checkout to v4

* Fix entrypoints and commands

* Upgrade pyOpenSSL to v24.0.0

* Upgrade tenacity to v8
2024-02-21 09:19:33 +01:00
.github Chromium und Alpine update (#319) 2024-02-21 09:19:33 +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 Job-Verwaltung mit RQ, und vieles mehr (#149) 2021-11-11 20:15:43 +01:00
export Fix full JSON export 2019-05-04 23:00:00 +02:00
kubernetes Make and use a versioned docker image (#279) 2022-10-24 21:35:15 +02:00
manager Use latest release in spider jobs 2022-10-25 09:41:01 +02: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
cli.py Job-Verwaltung mit RQ, und vieles mehr (#149) 2021-11-11 20:15:43 +01:00
docker-compose.yaml Make and use a versioned docker image (#279) 2022-10-24 21:35:15 +02:00
Dockerfile Chromium und Alpine update (#319) 2024-02-21 09:19:33 +01:00
index.yaml Add webapp deployment (#87) 2018-11-20 19:54:23 +01:00
job.py Make and use a versioned docker image (#279) 2022-10-24 21:35:15 +02:00
k8s-job-manager.py Automatisierung für Job-Erzeugung und -Ausführung in Kubernetes (#232) 2022-10-18 09:00:31 +02: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 Chromium und Alpine update (#319) 2024-02-21 09:19:33 +01:00
README.md Make and use a versioned docker image (#279) 2022-10-24 21:35:15 +02:00
requirements.txt Chromium und Alpine update (#319) 2024-02-21 09:19:33 +01:00

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 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 \
  quay.io/netzbegruenung/green-spider:main 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"}'