Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18
  1. #11
    Nessun consiglio?

  2. #12
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Così ad occhio, ma propio ad occhio il tuo problema è qui:
    Codice PHP:
    for($i 1;$i<$number_of_pages;$i++) { 
    dovrebbe essere
    Codice PHP:
    for($i 1;$i<=$number_of_pages;$i++) { 

  3. #13
    Purtroppo il problema non è quello...lo script si "perde" per strada le altre pagine in mezzo...

    con qualche miglioramento sul codice sono riuscito a fargli salvare anche qualche immagine delle pagine precedenti, ma comunque si perde ancora molti pezzi per strada

  4. #14
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Secondo me devi pensare di fermarti e riprogettare.
    Usare il concetto divide et impera e costruire un giusto set di funzioni.

    una funzione ad esempio per estrarre le sottostringhe contenute tra due elementi.

    una funzione per estrarre un collegamento da un attributo

    una funzione per ottenere gli offset e le occorrenze di una sottostringa

    etc...

    quando ti sei fatto questo set di funzioni allora puoi inziare a gestire il tutto.

    quindi in primis apri l'url inziale, poi estrai tutti i collegamenti e li salvi in opportuna struttura dati.
    quindi avvi l'estrazione dei percorsi delle immagini e li salvi.

    a questo punto avvii il download delle immagini

    quando hai finito ripeti la procedura per ogni link che trovi markando opportunamente quelli gia' visitati (eviti i loop infinit) ... facendo cosi' hai 1 procedura migliore e ppiu' facile da gestire.

  5. #15
    Proverò a fare come dici
    Grazie!

  6. #16
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Np facci sapere come va

    una buona tecnica per identificare le sottostringhe(anche epr un discorso di performance) e' usare regular expressions con i relativi caratteri di controllo \b che servono a segnare il limite

    ad esempio

    Codice PHP:

    $str 
    '</div>

        <div id="servizi">
            <ul>[*][url="http://crea.html.it"]Crea[/url][*][url="http://font.html.it"]Font.it[/url][*][url="http://www.freehtml.it"]Free Internet[/url][*][url="http://gifanimate.html.it"]GIFanimate.it[/url][*][url="http://www.newsletter.it"]Newsletter.it[/url][*][url="http://shop.html.it"]Shop[/url][*][url="http://webtool.html.it"]Webtool Free[/url]
            [/list]
        </div>'
    ;

    $pattern '/<a\\b (.*?)<\\/a>/' ;    
    $arr = array() ;
    $ris preg_match_all$pattern $str $arr PREG_OFFSET_CAPTURE ) ;

    echo 
    $ris."<hr><pre>" ;
    var_dump($arr) ;

    foreach( 
    $arr as $a=>$v )
    {
        echo 
    htmlentities($v);
        echo 
    "<hr>" ;


  7. #17
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Originariamente inviato da DKiller92
    Purtroppo il problema non è quello...lo script si "perde" per strada le altre pagine in mezzo...

    con qualche miglioramento sul codice sono riuscito a fargli salvare anche qualche immagine delle pagine precedenti, ma comunque si perde ancora molti pezzi per strada
    Ovviamente c'è dell'altro. Il problema da te esposto inizialmente diceva che perdevi solo l'ultimo elemento ma a quanto pare perdi molto di più.
    Ridarò un occhio al codice e cercherò di capire se c'è dell'altro.

  8. #18
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    A questo punto mi sa che gli conviene riaprtire applicando una struttura migliore al codice.
    Impostando le funzioni per estrarre i dati e quelle per gestirli e quindi usarle nel "main"

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 © 2026 vBulletin Solutions, Inc. All rights reserved.