Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Grattare informazioni da altre pagine web

    Ciao a tutti,

    sto sviluppando un sito e nella home page vorrei inserire una piccolata tabella con un almanacco. Praticamente si tratta di citare 3 personaggi famosi della storia nati nel giorno corrente in cui si visualizza la pagina e 3 personaggi morti in quello stesso giorno. Ovviamente si potrebbe costruire un database con i l'elenco dei personaggi e rispettive date di nascita/morte e poi con sql eseguire la query. Tutto questo però io non ce l'ho e quindi l'alternativa è "prendere in prestito" le informazioni che mi servono da un'altra pagina web!
    Ho trovato il sito www.wikipedia.com in cui ogni giorno viene pubblicato un almanacco proprio come piacerebbe a me, l'idea quindi e srivere una funzione in php che mi scarici le info da questo sito e poi le metta nella mia home page.

    Non ho trovato molto in giro, ma penso non sia una cosa poco diffusa...qualche idea su come si possa realizzare una cosa del genere?

    Grazie anticipatamente a tutti, Luigi

  2. #2
    impossibile prelevare informazioni da altre pagine dinamiche presenti su altri siti dinamici, oltretutto loro prelevano i dati da un db in maniera dinamica e te dovresti accedere al loro db per prelevare quelle informazioni, cosa impossible senza avere i dati.

    In una parola: scordalo.

    Al massimo se non puoi usufruire di un db, inserisci le informazioni in un file testuale.

  3. #3
    potersti farti il parsing del file html generato, con tutti i rischi del caso (se loro fanno un cambiamento il tuo parsing non funziona + o funziona in parte)

    in pratica, leggendo il codice html generato dall'altra pagina come se fosse un file isoli i dati che ti servono...
    "durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."

    http://www.kumbe.it

  4. #4
    Scusami per l'ignoranza...ma cosa significa fare il parsing del file?

  5. #5
    Il metodo che ti ha suggerito nik600 è l'unico che pèuoi utilizzare non potendo accedere al db di wikipedia (quindi, smal, non è vero che è impossibile!).

    Fare il parsing vuol dire aprire il file e farlo leggere al php.

    Con una regex dovresti riuscire ad identificare le righe che ti interessano, pulirle dal codice html, eseguire un explode sulle informazioni, stamparle nella pagina.

    Non è impossibile ma comporta un enorme dispendio di energie per il server e quindi la pagina diventerà molto molto lenta da caricare (somma il caricamento della tua pagina, il caricamento della pagina di wikipedia ed il parsing per niente semplice). Inoltre, come giustamente ha notato nik600, se dovessero essere apportate modifiche alla pagina che parsi il parsing stesso potrebbe non funzionare più!

    In definitiva non è impossibile fare ciò che vuoi fare ma molto sconveniente = non lo fare, creati il db. Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  6. #6
    usa un file di testo dove butti tutti tuoi dati, sarà sicuramente più veloce del parsing o pure usa un database access

  7. #7
    Grazie a tutti per i suggerimenti.

    Sono riuscito a fare il parsing sull pagina www.focus.it/alma/alma_index.asp e ad estrapolare le informazioni che mi servono anche se ho constatato con mano che è effettivamente MOOOLTO LENTO!!!

    Quindi penso proprio che mi costruirò un mio piccolo database o un file di testo con i dati...

    Comunque visto che si è trattato di un esercizio, un'ultima curiosità:non riesco a fare lo stesso con wikipedia.

    Mi spiego. Ovviamente per aprire la pagina web da cui ricavare le informazioni uso questo codice:

    $url = 'http://it.wikipedia.org/wiki/Pagina_principale';
    $fd = fopen($url, "r") or die("Non posso aprire il file");

    ora il problema è che con focus in cui l'url è: http://www.focus.it/alma/alma_index.asp funziona, ma con wikipedia no. Io penso che sia perchè alla fine l'url di wikipedia non ha una estensione, è questo il problema?

    Comunque cosa altrettanto strana il messaggio di errore non ha nessun codice numerico, questo è il messaggio di errore:

    Warning: fopen("http://it.wikipedia.org/wiki/Pagina_principale", "r") - No error in c:\programmi\apache group\apache\test\prova\index_wikipedia.php on line 103
    Non posso aprire il file

    Grazie a tutti, Luigi

  8. #8
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    Originariamente inviato da smal
    impossibile prelevare informazioni da altre pagine dinamiche presenti su altri siti dinamici, oltretutto loro prelevano i dati da un db in maniera dinamica e te dovresti accedere al loro db per prelevare quelle informazioni, cosa impossible senza avere i dati.

    In una parola: scordalo.
    Forse prima di scrivere qualcosa bisognerebbe essere ben consapevoli dell'argomento che si sta trattando.

  9. #9
    Benissimo! Ottimo esercizio.
    Per il messaggio di errore non so che dirti! Non ho la minima idea di quale possa essere la causa dell'errore. Aspetteremo qualcuno che ne sa di più !

    Per il resto inutile suggerire altri metodi (db access VVoVe: , file di testo ). Il problema qui è aprire una pagina web di un altro sito. Se avesse avuto bisogno di sapere dove memorizzare i dati allora sarebbe stato giusto ma in questa sede sono tutti ot. Non è un rimprovero ma solo un invito a pensare, come giustamente dice chris, prima di scrivere. Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.