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

    Entrambi implode e fsockopen non si collegano

    Ho un problema a collegarmi con PHP a questa pagina web per poi poter fare il parsing dei dati:

    http://www.borsaitaliana.it/bitApp/l...t=3&sub_list=4

    Ho provato prima con implode(), ma probabilmente il server del sito non riconoscendo un useragent valido restituisce accesso negato:
    Codice PHP:
    $html implode(''file($www_addr)); 
    Allora ho provato in seguito con fsockopen() ed il seguente codice:
    Codice PHP:
    $HOST 'http://www.borsaitaliana.it';
    $URI '/bitApp/listino?service=Data&lang=it&main_list=3&sub_list=4';

    if (!(
    $sock fsockopen($HOST80$errno$errstr30))) die
    (
    $errno." : ".$errstr);

    fputs ($sock,
        
    "GET $URI HTTP/1.1\r\n".
        
    "Host: $HOST\r\n".
        
    "User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:14.0) Gecko/20100101
    Firefox/14.0.1\r\n"
    .
        
    "Accept-Language: it-it,it;q=0.8,en-us;q=0.5,en;q=0.3\r\n".
        
    "Connection: Keep-Alivern\r\n\r\n");

    $pagina "";
    while (!
    feof($sock)) $pagina .= fgets($sock);

    fclose($sock);

    $s explode("\r\n\r\n"$pagina);
    $sorgente $s[1];

    //dentro a $sorgente hai il sorgente della pagina
    echo $sorgente
    In questo caso non mi viene proprio effetuata la connessione per errore sulla funzione fsockopen() nonostante in php.ini sia perfettamente abilitata...non so più che fare, non c'è un modo per cambiare l'useragent di implode che mi sembra la funzione migliore?

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Hai provato con file_get_contents? Ti consiglio inoltre questa buona libreria per il parsing html di una pagina http://simplehtmldom.sourceforge.net/

  3. #3
    Originariamente inviato da RoTeam
    Hai provato con file_get_contents? Ti consiglio inoltre questa buona libreria per il parsing html di una pagina http://simplehtmldom.sourceforge.net/
    Per caso hai già usato la libreria? Purtroppo io non ho capito molto su come usarla, se invece tu sai come si usa, come faresti ad estrapolare in testo semplice la seguente parte?

    codice:
    <table border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF"
    width="95%" >
    <tr align="center"><td bgcolor="#003A84" colspan="814"
    class="bianco">Opzioni su indici</td></tr>
    <tr><td>
    <table border="0" cellspacing="1" cellpadding="2" bgcolor="#ffffff"
    bordercolordark="#ffffff" bordercolorlight="#ffffff" width="100%">
    <tr>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Codice Isin</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Nome Serie</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Prezzo Esercizio</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Closing Price</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Prezzo Minimo</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Prezzo Massimo</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Open Interest</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Contratti</td>
    </tr>
    <tr>
    <td bgcolor="#E4EBF3" align="middle">IT0010244314</td><td bgcolor="#E4EBF3"
    align="right">MIBO5L10000</td><td bgcolor="#E4EBF3" align="right">10
    000.00</td><td bgcolor="#E4EBF3" align="right">4 590.00</td><td
    bgcolor="#E4EBF3" align="right">0.00</td><td bgcolor="#E4EBF3"
    align="right">0.00</td><td bgcolor="#E4EBF3" align="right">0</td><td
    bgcolor="#E4EBF3" align="right">0</td></tr>
    <tr>
    <td bgcolor="#FFFFFF" align="middle">IT0010244322</td><td bgcolor="#FFFFFF"
    align="right">MIBO5L11000</td><td bgcolor="#FFFFFF" align="right">11
    000.00</td><td bgcolor="#FFFFFF" align="right">4 008.00</td><td
    bgcolor="#FFFFFF" align="right">0.00</td><td bgcolor="#FFFFFF"
    align="right">0.00</td><td bgcolor="#FFFFFF" align="right">0</td><td
    bgcolor="#FFFFFF" align="right">0</td></tr>
    <tr>
    <td bgcolor="#E4EBF3" align="middle">IT0010244330</td><td bgcolor="#E4EBF3"
    align="right">MIBO5L12000</td><td bgcolor="#E4EBF3" align="right">12
    000.00</td><td bgcolor="#E4EBF3" align="right">3 422.00</td><td
    bgcolor="#E4EBF3" align="right">0.00</td><td bgcolor="#E4EBF3"
    align="right">0.00</td><td bgcolor="#E4EBF3" align="right">0</td><td
    bgcolor="#E4EBF3" align="right">0</td></tr>
    </table></td></tr>
    </table>
                            </center>
                            
    <table border=0 width="100%"><tr><td align="center">[img]/grafica_listino/indietro_it.gif[/img]</td></tr></table>
    grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Originariamente inviato da verhuizen
    Per caso hai già usato la libreria? Purtroppo io non ho capito molto su come usarla, se invece tu sai come si usa, come faresti ad estrapolare in testo semplice la seguente parte?

    codice:
    <table border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF"
    width="95%" >
    <tr align="center"><td bgcolor="#003A84" colspan="814"
    class="bianco">Opzioni su indici</td></tr>
    <tr><td>
    <table border="0" cellspacing="1" cellpadding="2" bgcolor="#ffffff"
    bordercolordark="#ffffff" bordercolorlight="#ffffff" width="100%">
    <tr>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Codice Isin</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Nome Serie</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Prezzo Esercizio</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Closing Price</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Prezzo Minimo</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Prezzo Massimo</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Open Interest</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">Contratti</td>
    </tr>
    <tr>
    <td bgcolor="#E4EBF3" align="middle">IT0010244314</td><td bgcolor="#E4EBF3"
    align="right">MIBO5L10000</td><td bgcolor="#E4EBF3" align="right">10
    000.00</td><td bgcolor="#E4EBF3" align="right">4 590.00</td><td
    bgcolor="#E4EBF3" align="right">0.00</td><td bgcolor="#E4EBF3"
    align="right">0.00</td><td bgcolor="#E4EBF3" align="right">0</td><td
    bgcolor="#E4EBF3" align="right">0</td></tr>
    <tr>
    <td bgcolor="#FFFFFF" align="middle">IT0010244322</td><td bgcolor="#FFFFFF"
    align="right">MIBO5L11000</td><td bgcolor="#FFFFFF" align="right">11
    000.00</td><td bgcolor="#FFFFFF" align="right">4 008.00</td><td
    bgcolor="#FFFFFF" align="right">0.00</td><td bgcolor="#FFFFFF"
    align="right">0.00</td><td bgcolor="#FFFFFF" align="right">0</td><td
    bgcolor="#FFFFFF" align="right">0</td></tr>
    <tr>
    <td bgcolor="#E4EBF3" align="middle">IT0010244330</td><td bgcolor="#E4EBF3"
    align="right">MIBO5L12000</td><td bgcolor="#E4EBF3" align="right">12
    000.00</td><td bgcolor="#E4EBF3" align="right">3 422.00</td><td
    bgcolor="#E4EBF3" align="right">0.00</td><td bgcolor="#E4EBF3"
    align="right">0.00</td><td bgcolor="#E4EBF3" align="right">0</td><td
    bgcolor="#E4EBF3" align="right">0</td></tr>
    </table></td></tr>
    </table>
                            </center>
                            
    <table border=0 width="100%"><tr><td align="center">[img]/grafica_listino/indietro_it.gif[/img]</td></tr></table>
    grazie
    Codice PHP:
    require 'simple_html_dom.php';

    $file file_get_html('http://www.borsaitaliana.it/bitApp/listino?service=Data&lang=it&main_list=3&sub_list=4'); //funzione inerente alla libreria

    echo $file->find('center',0); 

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.