Avatar billede sqren Nybegynder
16. juni 2008 - 12:34 Der er 7 kommentarer

Notifier der kigger efter ændringer

Hej,

Jeg søger et program til Windows (muligvis også Mac), der kan tjekke en internetside hver f.eks. 5. minut og se om der er ændringer.

Jeg er rimelig stærk i php+Mysql, men mht. C++ er jeg helt grøn.

Jeg har allerede lavet siden på nettet, som programmet skal kigge på og det fungerer således:

1. Program tjekker op på bruger-specifik side (f.eks. page.php?userid=55)

2. page.php kigger i DB om der er nogen ændringer, siden id=55 sidst loggede ind.

3. Hvis der ikke er noget nyt outputtes en blank side
ELLER
hvis der er nyt skrives der f.eks.
"3 nye billedekommentarer" eller "2 nye forumindlæg"

Hvis page.php altså ikke er blank, skal notify-programmet gøre brugeren opmærksom på dette. Evt. med en lille "pop-up" fra taskbar'en nede i højre hjørne, som Gmail Notifier og MSN Messenger gør det.

Jeg har fundet ud af, at jeg vist nok skal bruge såkaldte winsockets, men har ellers ikke forstand på, hvordan det gøres.

På forhånd tak! :)
Avatar billede bertelbrander Praktikant
16. juni 2008 - 20:16 #1
En ret simpel metode til at hente http i C++ på Windows:
http://damb.dk/snip/httpget.html

Og lave et ikon ved uret:
http://damb.dk/trayicon.php
Avatar billede sqren Nybegynder
19. juni 2008 - 17:43 #2
Tak for det. Jeg har kigget på den første, men der er lidt knas med den.
Jeg er som sagt helt ny i c++ (jeg er dårlig nok begyndt).
Men nu har jeg downloaded Dev-C++.

Når jeg prøver at compile koden får jeg en masse fejlmeddelelser. bla:
[Linker Error] undefined reference to 'InternetOpenA@20'

Jeg løste det dog ved at linke til -lwininet.

Der sker dog ikke noget når jeg kører Exe-filen.
Det skal desuden siges, at jeg valgte at lave et Winows projekt - hvis det betyder noget :)
Avatar billede sqren Nybegynder
19. juni 2008 - 19:12 #3
... Hmmm
Nu kan jeg se, at Google bliver hentet, hvis jeg kører det via kommandoprompt. Men det er jo et lidt kedeligt program. ;)
Hvordan får man det "over i Windows".
Avatar billede bertelbrander Praktikant
19. juni 2008 - 19:33 #4
Det kommer jo lidt an på hvordan du vil have det "over i windows".
Du kan kan oprette en edit-kontrol og vise html koden der, det burde være ret trivielt.

Men så vidt jeg forstår er formålet mere at parse output for at checke om der er ændringer?
Avatar billede sqren Nybegynder
07. juli 2008 - 19:13 #5
Jeg er ikke med på hvordan jeg opretter en edit-kontrol.

Hvordan viser jeg hvis der er ændringer?
Avatar billede sqren Nybegynder
07. juli 2008 - 19:22 #6
Altså, jeg skal jo parse indholdet. Fint, det kan jeg nu. Men hvordan undersøger jeg det. Altså tjekker om der er noget indholdet og hvad det er. Og hvordan outputter jeg hvilke ændringer der er (afhængigt af indholdet)
Avatar billede bertelbrander Praktikant
15. juli 2008 - 19:51 #7
Jeg troede egentlig at jeg havde svaret, men svaret er åbenbart forsvundet.

Jeg tror du skal starte med at fortælle hvordan teksten ser ud, hvilke ændringer er det du leder efter, osv.

Den helt simple udgave er at sammenligne to set tekst fra siden, og blot checke om de er ens, men derved risikerer du at der er del ændringer som er uinteressante.

En rigtig parsning af html/xml/whatever tekst er ikke trivielt, men ofte kan man strikke noget forholdsvist enkelt sammen som kan det man har brug for.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester