Visualizzazione dei risultati da 1 a 2 su 2

Discussione: parsing tabella html

  1. #1

    parsing tabella html

    Salve,

    vorrei capire come fare il parsing di una tabella HTML come quella che segue (ho estratto la parte che mi interessa) di tutto il documento:

    Codice PHP:

                        
    <p align=rigth>
        <
    script language="Javascript">
                    function 
    printWin()
                    {
                        
    window.open("/bitApp/listino?target=null&lang=it&service=Data&main_list=3&sub_list=4&action=print","printwin","menubar=no,toolbar=no,scrollbars=yes,width=650,height=450");
                 }
        
    </script>
    <div align="right">
                         [url="#"][img]/grafica_listino/stampa_it.gif[/img][/url] 

    </div>
                
    <table border=0 width="100%">
                <tr>
                    <td width="50%">
                    [b]<font size="-1">Listino del 13/8/2012</font>[/b]

                    [b]<font size="-1">[url="/"]Home Page[/url] > [url="/bitApp/listino?target=null&lang=it&service=Listino&20120813"]Listino Ufficiale[/url] > Derivati</font>[/b]

                    

                    </td>
                </tr>
                </table>
                <center>

    <table border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF" width="95%" >
    <tr align="center"><td bgcolor="#003A84" colspan="762" class="bianco">[b]Opzioni su indici[/b]</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">[b]Codice Isin[/b]</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">[b]Nome Serie[/b]</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">[b]Prezzo Esercizio[/b]</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">[b]Closing Price[/b]</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">[b]Prezzo Minimo[/b]</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">[b]Prezzo Massimo[/b]</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">[b]Open Interest[/b]</td>
    <td align="middle" bgcolor="#7f9dc1" class="bianco">[b]Contratti[/b]</td>
    </tr>
    <tr>
    <td bgcolor="#E4EBF3" align="middle">[b][url="/bitApp/listino?target=null&lang=it&service=Detail&main_list=3&sub_list=4&extra=651463"]IT0010254313[/url][/b]</td><td bgcolor="#E4EBF3" align="right">MIBO5L31000</td><td bgcolor="#E4EBF3" align="right">31 000.00</td><td bgcolor="#E4EBF3" align="right">12.00</td><td bgcolor="#E4EBF3" align="right">0.00</td><td bgcolor="#E4EBF3" align="right">0.00</td><td bgcolor="#E4EBF3" align="right">6</td><td bgcolor="#E4EBF3" align="right">0</td></tr>
    <tr>
    <td bgcolor="#FFFFFF" align="middle">[b][url="/bitApp/listino?target=null&lang=it&service=Detail&main_list=3&sub_list=4&extra=651464"]IT0010254321[/url][/b]</td><td bgcolor="#FFFFFF" align="right">MIBO5X31000</td><td bgcolor="#FFFFFF" align="right">31 000.00</td><td bgcolor="#FFFFFF" align="right">17 977.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>

    [...cut...]

    </table></td></tr>
    </table>
                </center>
                
    <table border=0 width="100%"><tr><td align="center">[url="#"][img]/grafica_listino/indietro_it.gif[/img][/url]</td></tr></table> 
    Una volta estratti i dati vorrei crearne un file XML così strutturato:
    codice:
    <MIBO ISIN="IT0010254313" SERIE="MIBO5L31000" STRIKE="31000" PRICE="12" DATA="13-08-2012" />
    e così via...

    (la data viene presa dalla riga "Listino del 13/8/2012" e viene aggiunta in ogni record, so che è una procedura sbagliata che lo stesso dato venga ripetuto per ogni riga, ma non fa niente!)

    I numeri STRIKE e PRICE vengono ripuliti dello spazio e del ".00"

    Un ringraziamento a chi mi aiuterà!

  2. #2
    Al dire il vero dalla voce serie, ad esempio "MIBO5L31000", bisognerebbe estrapolare due succesive voci, YEAR, MONTH e TYPE. Consideriamo i primi 6 caratteri, scartiamo i primi 4 ("MIBO") il carattere successivo "5" viene inteso come 2015 (quindi 2=2012, 3=2013 etc...) quindi nel record XML c'è anche la voce YEAR="2015" mentre ad esempio il sesto carattere ("L") ha un duplice significato, ovvero aggiunge un attributo TYPE="CALL" e MONTH="DICEMBRE" quindi immagino bisognerà costruire un HASH associativo composto da KEY["L"]=["CALL","DICEMBRE"] etc...
    Immagini allegate Immagini allegate

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.