Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Links automatisch nach 404 testen #53

Open
YourMJK opened this issue Aug 2, 2024 · 3 comments
Open

Links automatisch nach 404 testen #53

YourMJK opened this issue Aug 2, 2024 · 3 comments
Assignees
Labels
Erweiterung Neues Feature oder Wunsch in Planung Wird eventuell zukünftig bearbeitet

Comments

@YourMJK
Copy link
Owner

YourMJK commented Aug 2, 2024

um z.B. Änderungen bei den Apple Music- oder Spotify-IDs zu erkennen

@YourMJK YourMJK added Erweiterung Neues Feature oder Wunsch in Planung Wird eventuell zukünftig bearbeitet labels Aug 2, 2024
@YourMJK YourMJK self-assigned this Aug 2, 2024
@stehefan
Copy link
Contributor

stehefan commented Nov 5, 2024

Hab da mal was ge-prototyped:

#!/bin/bash

function checkUrl() {
  local url=$1
  rc=$(curl -H 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:80.0) Gecko/20100101 Firefox/80.0' -w "%{http_code}" -s -o /dev/null "${url}")

  if [[ $rc -gt 399 ]]; then
     echo "${url} responding with status code: ${rc}"
   fi
}
export -f checkUrl

echo "Starting link check..."
jq -r '.serie.[].links | to_entries | .[] | "\(.value)"' ../metadata/json/Alle.json | xargs -I {} bash -c 'checkUrl "{}"'

Läuft auf meinem lokalen Mac (M1 Pro) in ~60 Sekunden. Könnte man gut als Github Action einbinden und dann über ein Schedule bspw. nächtlich laufen lassen.

@YourMJK
Copy link
Owner Author

YourMJK commented Nov 6, 2024

@stehefan Vielen Dank!
Das ist eine gute Idee, v.a. das mit GitHub-Actions zu lösen. Muss ich mir mal anschauen.

Was noch zu testen ist: ob die verschiedenen Seiten wirklich einen 400-Code zurückgeben bei nicht (mehr) verfügbaren Hörspielen – oder doch 200 mit entsprechendem body, oder eine Weiterleitung etc.

@stehefan
Copy link
Contributor

stehefan commented Nov 6, 2024

Die verschiedenen Anbieter nutzen verschiedene Return-Codes bei den Requests. Einige nutzen 200, andere 30x um auf die volle URL weiterzuleiten. Hatte keine 4xx oder 5xx bei den Requests (außer, als ich den Header noch nicht mitgesendet hatte).

Das war auch der Grund, warum ich alles unter 400 als OK akzeptiert habe. Man könnte noch nach den Anbietern filtern, da die sich für alle Requests zumindest gleich verhalten.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Erweiterung Neues Feature oder Wunsch in Planung Wird eventuell zukünftig bearbeitet
Projects
None yet
Development

No branches or pull requests

2 participants