Visualizzazione dei risultati da 1 a 10 su 14

Visualizzazione discussione

  1. #10

    Risolto in parte..

    Alla fine ho "quasi" risolto così, prendendo in considerazione entrambi i consigli , riesco a generare un arrai secondo quello schema @grazie Alhazred, ciclando un div che contiene il prodotto @grazie k.b

    Ma mi da un errore quando faccio l'ultimo foreach per visualizzare i contenuti..
    Ecco il nuovo codice..

    Codice PHP:
    <?PHP$html file_get_contents('http://www.amazon.it/s/ref=sr_il_to_luggage?rh=n%3A2454148031%2Cp_8%3A45-100&sort=relevancerank&ie=UTF8&qid=1430756991&lo=none');$dom = new DOMDocument();@$dom->loadHTML($html);
    $xpath = new DOMXpath($dom);

      
    $divs $xpath->query('//div[@class="s-item-container"]');

      
    $dati_prodotto = array();  
      foreach(
    $divs as $div) {
            
    $links $xpath->query('.//a[@class="a-link-normal a-text-normal"]'$div);                foreach ($links as $link) {                $linkprod $link->getAttribute('href');        }        
            
    $images $xpath->query('.//img[@alt="Dettagli prodotto"]'$div);                foreach ($images as $image) {                $linkimm $image->getAttribute('src');        }        
            
    $titles $xpath->query('.//h2[@class="a-size-base a-color-null s-inline s-access-title a-text-normal"]'$div);                foreach ($titles as $title) {                $titleprod $title->nodeValue;        }        
            
    $prezzops $xpath->query('.//span[@class="a-size-small a-color-secondary a-text-strike"]'$div);                foreach ($prezzops as $prezzop) {                preg_match_all('/((\d{1,5}),(\d{2}))/'$prezzop->nodeValue $res );                $prezzoprima $res[1][0];        }        
            
    $prezzods $xpath->query('.//span[@class="a-size-base a-color-price s-price a-text-bold"]'$div);                foreach ($prezzods as $prezzod) {                preg_match_all('/((\d{1,5}),(\d{2}))/'$prezzod->nodeValue $res1 );                $prezzodopo $res1[1][0];                }      $dati_prodotto[] = array('linkprod' => $linkprod'imm' => $linkimm'titolo' => $titles'prezzop' => $prezzoprima'prezzodopo' => $prezzodopo );

      }     
    print_r($dati_prodotto);
              foreach (
    $dati_prodotto as $singolo_prodotto) :         echo '<a href="'.$singolo_prodotto["linkprod"].'">'.$singolo_prodotto["titolo"].'</a><br>        <img src="'.$singolo_prodotto["imm"].'" alt="test" height="150" width="150"><br>        Prima costava: '.$singolo_prodotto["prezzop"].' , ora viene: '.$singolo_prodotto["prezzodopo"].'<br /><br />';        endforeach;?>
    Come potete notare, in fondo alla pagina dei risultati che mostrano il contenuto del print_r, dovrebbe esserci il foreach che mi da questo errore:

    codice HTML:
    Catchable fatal error: Object of class DOMNodeList could not be converted to string in /web/htdocs/www.miosito.it/home/parsing.php on line 66
    P.S. Perchè quando posto codice alcune volte si vede così una porcheria?
    Ultima modifica di otto9due; 07-05-2015 a 00:41

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.