Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Parsing HTML

  1. #1

    Parsing HTML

    Ciao a tutti, vi scrivo perchè ho un problema:
    sto tentando di effettuare un parsing automatizzato di una pagina html presa dal web.
    Da questa pagina HTML avrei bisogno di estrarre solo una porzione di dati, ed in particolare la parte che più mi interessa è così formata:


    Codice PHP:

    </tr>

    <
    tr class="DettaglioApplicazioni">
        <
    td><div style="padding-left:5px">111</div></td>
        <
    td><div style="padding-left:5px">42</div></td>
        <
    td><div style="padding-left:5px">50</div></td>
        <
    td><div style="padding-left:5px">110</div></td>
        <
    td><div style="padding-left:5px">14</div></td>
        <
    td><div style="padding-left:5px">105</div></td>
    </
    tr
    Quello che mi servirebbe è tirar fuori i numeri che sono tra i tag.. e null'altro!!! (quindi 6 numeri)
    Ammesso che io abbia nella variabile $html, tutto l'html della pagina (e quindi non solo la porzione di codice riportata).. come faccio ad estrapolare i dati?????

    grazie infinite in anticipo per chi volesse aiutarmi!!!!

  2. #2
    Se ne è discusso decine di volte. strpos() + substr(), preg_match_all(), TIDY + DOM, TIDY + SAX, TIDY + SimpleXML.

  3. #3
    si..solo che non riesco a trovare un esempio valido!
    non è che potresti darmi un aiuto?

  4. #4
    Originariamente inviato da irciverson
    si..solo che non riesco a trovare un esempio valido!
    Ma hai almeno provato una delle soluzioni proposte o speri solo che qualcuno ti posti il codice bello e pronto?

  5. #5
    son 2 giorni che ci provo! riesci almeno a consigliarmi un altro thread dove se n'è parlato?!

  6. #6
    Perchè non posti un po' del codice che hai scritto. Se non altro capiremo dove stai sbagliando.

  7. #7
    il fatto è che ci ho provato talmente in tanti modi senza risultato che non so proprio dove sbattere più la testa!! (non son un gran programmatore esperto di php purtroppo!)

    ho provato ad adattare il mio codice con quelli trovati su internet.. tipo:

    Codice PHP:
      for($i $i $len $i++ )
       {
          if(
    $t=='' &&  substr($html,$i,strlen('<td><div style="padding-left:10px">'')) == '<td><div style="padding-left:10px">')
              $t = substr($html,$i+strlen('
    <td><div style="padding-left:10px">''),strpos(substr($html,$i+strlen('<td><div style="padding-left:10px">'')-1),'3); 
    ma ovviamente nulla..

  8. #8
    Perchè non provi ad usare un po' di logica di base?

    Per prima cosa, devi scrivere un codice che trovi il primo '<td><div style="padding-left:5px">'. Per questo esiste strpos().

    Poi, a partire da quel punto, devi trovare il primo '</div>'. E sempre strpos() va usato.

    Poi, utilizzi substr() per estrarre ciò che vi si trova in mezzo.

    Ed infine, ricominci dalla posiziona attuale con il passo 1.

  9. #9
    ok ammesso che riesca a fare una cosa del genere (ed in effetti è proprio questo il problema :P), come procedo per le 5 successive righe che sono uguali? non dovrebbe trovarmi sempre la prima di riga se posiziono su "<td><div style="padding-left:10px">"?

  10. #10
    Originariamente inviato da filippo.toso
    Ed infine, ricominci dalla posiziona attuale con il passo 1.

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.