Quale codice dovrei usare per informarmi degli aggiornamenti sui siti web? [chiuso]

-2

Non so se questo è il posto giusto per porre questa domanda, ma lo chiederò comunque qui.

Non so molto sulla programmazione (ho solo imparato MATLAB!) ma mi chiedo se c'è un modo semplice per scrivere un codice per controllare un sito ogni x minuti, per esempio, per vedere se una certa cosa cambia e avvisami quando lo fa?

Spero che questa domanda non sia troppo vaga!

Grazie in anticipo per il tuo aiuto.

EDIT: Ho un computer con Windows e uno con Ubuntu.

    
posta David 07.01.2015 - 14:54
fonte

4 risposte

3

È troppo vago. Ma fondamentalmente hai bisogno delle seguenti cose, e incollale insieme:

  • Una cosa che scarica la pagina web e la salva sul tuo computer
  • Una cosa che la confronta con la versione che hai scaricato prima di questa
  • Una cosa che ti informa sul confronto se è stata trovata una differenza
  • Una cosa che esegue l'intero aggeggio ogni x minuti

Per l'ultimo, se sei su Linux, allora cron è buono per eseguire qualcosa ogni x minuti. Il resto può essere fatto con molti linguaggi diversi, come Python, ma non scriverò tutto.

    
risposta data 07.01.2015 - 15:03
fonte
1

Se conosci MATLAB, allora questo dovrebbe essere il modo giusto per te:

  1. Ottieni la pagina: webread
  2. Cerca nella pagina il pattern HTML contenente i tuoi dati: strfind
  3. Estrai i dati
  4. Confronta i dati con l'ultimo registrato
  5. Se modificato, notifica, altrimenti attendi fino allo scadere del tempo e riesegui il processo
risposta data 08.01.2015 - 01:58
fonte
0

Per prima cosa diteci il vostro sistema operativo. :) Potresti usare tutte le lingue. Devi leggere il codice sorgente HTML di un sito web (meglio solo il corpo). Fai attenzione se sono presenti data e ora e così via.

Un'altra soluzione sarebbe (se supportata) la lettura del feed RSS.

    
risposta data 07.01.2015 - 15:01
fonte
0

Da completare sulla risposta di RemcoGerlich da una prospettiva Linux:

  • scarica una pagina utilizzando un comando come wget o curl o una libreria come libcurl (che ha molti wrapping, incluso per Python, Guile, ecc ...)

  • confronta due file con diff o cmp (o codifica il ciclo semplice leggendoli e confrontando byte per byte)

  • per notificare le modifiche: puoi inviare email (ad esempio, programmaticamente con vmime o popen a% co_de comando% o mail , o codice un comando sendmail con un documento qui ....); potresti anche essere informato sul desktop, ad es. con notifica-invia

  • per fare qualcosa periodicamente, una crontab (5) voce.

Come ho commentato, potrebbe essere una cattiva idea (quindi non correre troppo spesso, al massimo ogni 30 minuti per evitare di schiacciare il sito web). Potresti essere interessato da RSS . E farlo automaticamente potrebbe essere contro le regole del sito web! E potrebbe non funzionare se il sito web utilizza cookies o sessioni, ecc ...

A proposito, alcuni siti offrono una cosiddetta API Web che potrebbe essere utile, ad es. perché forniscono le informazioni forse nel formato JSON . Leggi anche i servizi web e amp; Web Sockets & REST & robots.txt

    
risposta data 07.01.2015 - 15:17
fonte

Leggi altre domande sui tag