ubuntuusers.de

Suche Programm, das Webseiten regelmäßig auf Begriffe prüft und eine Meldung ausgibt

Status: Gelöst | Ubuntu-Version: Kubuntu 12.04 (Precise Pangolin)
Antworten |

Supertux

Anmeldungsdatum:
6. Oktober 2006

Beiträge: 544

Wohnort: Bergisches Land

Ich suche ein Programm für KDE, dass in einstellbaren Intervallen Webseiten auf Begriffe durchsucht und bei Vorhandensein einer oder mehrerer Begriffe eine Meldung ausgibt.

Sinn ist, eine Mitteilung zu bekommen, wenn Personen in einem Chat sind.

fckawe

Avatar von fckawe

Anmeldungsdatum:
23. April 2011

Beiträge: 509

Wohnort: Freiburg im Breisgau

Hallo,

hmm, würde etwas dagegensprechen das über ein Shellskript zu lösen?

  • Den Inhalt einer Webseite kannst du mit wget abholen.

  • Prüfen, ob der gesuchte Begriff vorkommt kannst du mit grep, oder vielleicht besser mit XMLStarlet.

  • Eine Meldung ausgeben könntest du mit notify-send oder mit Zenity, ah nee bei KDE dann KDialog.

  • Das Shellskript kann dann per Crontab regelmäßig ausgeführt werden...

Gruß, Gerald

Supertux

(Themenstarter)

Anmeldungsdatum:
6. Oktober 2006

Beiträge: 544

Wohnort: Bergisches Land

Das ist mir natürlich alles schon klar, nur ich suche und frage lieber erst, ob es das schon gibt, bevor ich eine zehnte Version davon schreibe.

fckawe

Avatar von fckawe

Anmeldungsdatum:
23. April 2011

Beiträge: 509

Wohnort: Freiburg im Breisgau

Supertux schrieb:

Das ist mir natürlich alles schon klar, nur ich suche und frage lieber erst, ob es das schon gibt, bevor ich eine zehnte Version davon schreibe.

Natürlich ist das nicht - ich weiß weder wer du bist, noch was du weißt und kannst.

Mir ist jedenfalls auch nicht bekannt, dass irgendwo so etwas schon angeboten wird.

Gruß, Gerald

Vegeta

Avatar von Vegeta

Anmeldungsdatum:
29. April 2006

Beiträge: 7943

Ich stand bei meinem Umstieg zu Linux vor einem ähnlichen Problem damals und habe extra ein eigenes Projekt begonnen, es gibt mittlerweile aber einfache kostenlose Programme die dies erledigen können. Entweder als Firefox-Plugin oder eigenes Programm.

Supertux

(Themenstarter)

Anmeldungsdatum:
6. Oktober 2006

Beiträge: 544

Wohnort: Bergisches Land

Vegeta, aus der Beschreibung geht scheinbar hervor, dass die Programme nicht das machen, was ich möchte.

Ich habe mir jetzt ein Skript geschrieben.

Vegeta

Avatar von Vegeta

Anmeldungsdatum:
29. April 2006

Beiträge: 7943

Die Programme überprüfen Webseiten auf Änderungen. Ob eines davon Keywords in den Filtereinstellungen unterstützt, müsste nachgesehen werden. Aber wenn du dir selber helfen konntest umso besser.

Huaber256

Anmeldungsdatum:
13. Mai 2014

Beiträge: 14

Wohnort: Austria

Es wäre natürlich Toll wenn so ein Script irgendwo rein geschrieben wird dann müsste ich jetzt nicht wieder stunden lang suchen obs sowas evtl schon gibt ☺ Naja werde auch versuchen selber eins zu schreiben. Bei mir wäre der Sinn Mehrere Webserver (15) zu testen ob die Seite auch wirklich angezeigt wird damit unser First Level Support nicht so belastet wird.

Supertux

(Themenstarter)

Anmeldungsdatum:
6. Oktober 2006

Beiträge: 544

Wohnort: Bergisches Land

Wenn jemand mir sagen kann, wie kdialog funktioniert, wäre das toll.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/bin/bash

check_id() {

  ProfileID=$1
  NickName=$2
  
  if grep "\"profile${ProfileID}\"" $HTMLfile; then
    if ! [ -f "chat${ProfileID}.lock" ]; then
      echo "User is online." > "chat${ProfileID}.lock"
      # kdialog funzt nicht
      kdialog --title "$KdialogTitle" --passivepopup " $NickName is online. $TIME " 10
      # Sound abspielen
      PlaySound=1
      
    fi
  else
    if  [ -f "chat${ProfileID}.lock" ]; then
      # mögliche Ausgabe von rm nach /dev/null umleiten
      rm chat${ProfileID}.lock > /dev/null 2>&1
      # kdialog funzt nicht
      kdialog --title "$KdialogTitle" --passivepopup " $NickName is offline. $TIME " 10
    fi

  fi
  
}


HTMLfile='chat_check'
Soundfile='~/Music/Sounds/dream/stereo/success.ogg'
KdialogTitle='Chat-Status-Meldung'
TIME="$(date +"%H%M")"

# wenn ein User online ist, Sound abspielen, sonst nicht, nur einen, nicht mehrere, falls mehrere User online sind
PlaySound=0

# Webseite herunter laden
wget -nv -O $HTMLfile http://www.example.com

# Auf ID prüfen
check_id 23698 Nick

rm $HTMLfile

if (test $PlaySound = 1) then play -v 0.5 "$Soundfile"; fi

Antworten |