2017-07-14 58 views
0

我正在使用DOMXPath並遇到大問題。我不知道爲什麼,但這並不需要我需要的必填字段。我用谷歌瀏覽器複製xpath,但不幸的是它不起作用。也許任何人都可以幫助我?

PHP CODE:

<? 
    $ch = curl_init("http://127.0.0.1/file.html"); 
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 
    curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8'); 
    $response = curl_exec($ch); 

    $response = mb_convert_encoding($response, 'HTML-ENTITIES', "UTF-8"); 
    $thispage = new DOMDocument; 
    libxml_use_internal_errors(true); 
    $thispage->loadHTML($response); 
    libxml_clear_errors(); 

    $xpath = new DOMXPath($thispage); 

    $k = 2; 
     while ($xpath->evaluate('string(//*[@id="formulaire"]/table/tbody/tr[' . $k . ']/td[2])')) { 
      $degalines_kainos[$k][stotis] = $xpath->evaluate('string(//*[@id="formulaire"]/table/tbody/tr[' . $k . ']/td[2])'); 
      $degalines_kainos[$k][kaina_be_pvm] = $xpath->evaluate('string(//*[@id="formulaire"]/table/tbody/tr[' . $k . ']/td[7])'); 
      $degalines_kainos[$k][kaina_su_pvm] = $xpath->evaluate('string(//*[@id="formulaire"]/table/tbody/tr[' . $k . ']/td[8])'); 
      $k++; 
     } 

    for ($i=2; $i<$k; $i++) { 
     echo "<b>Degalinė: </b>". $degalines_kainos[$i][stotis].", <b>kaina be PVM: </b> ".$degalines_kainos[$i][kaina_be_pvm].", <b>kaina su PVM: </b> ".$degalines_kainos[$i][kaina_su_pvm]."<br>"; 

    } 
    ?> 

HTML文件:由谷歌瀏覽器

<!DOCTYPE html> 

<html> 
       <div id="formulaire"> 
       <form name="listePrixParStation" action="/website/v2/jsp/prix/prixParStation.jsp" method="post"> 
        <table width="700" border="0" cellspacing="0" cellpadding="0"> 
        <tr> 
        <td>&nbsp;</td> 
        <td> 
        <table width="100%" border="0" cellspacing="0" cellpadding="0"> 
        <tr> 
         <td colspan="2"> 
          <h1>Prix par station:</h1> 
         </td> 
        </tr> 
        <tr> 
        <td>Pays:</td> 
        <td> 

         <select name="pays"> 
          <option value="XXX">Tous</option> 

           <option value="DEU">ALLEMAGNE</option> 

           <option value="AUT">AUTRICHE</option> 

           <option value="BEL">BELGIQUE</option> 

           <option value="BLR">BIELORUSSIE</option> 

           <option value="BGR">BULGARIE</option> 

           <option value="HRV">CROATIE</option> 

           <option value="DNK">DANEMARK</option> 

           <option value="ESP">ESPAGNE</option> 

           <option value="FRA">FRANCE</option> 

           <option value="GEO">GEORGIE</option> 

           <option value="HUN">HONGRIE</option> 

           <option value="IRL">IRLANDE</option> 

           <option value="ITA">ITALIE</option> 

           <option value="LTU">LITHUANIE</option> 

           <option value="LUX">LUXEMBOURG</option> 

           <option value="MKD">MACEDOINE</option> 

           <option value="NLD">PAYS-BAS</option> 

           <option value="POL">POLOGNE</option> 

           <option value="PRT">PORTUGAL</option> 

           <option value="CZE">REP. TCHEQUE</option> 

           <option value="ROM">ROUMANIE</option> 

           <option value="GBR">ROYAUME UNI</option> 

           <option value="RUS">RUSSIE</option> 

           <option value="SRB">SERBIE</option> 

           <option value="SVQ">SLOVAQUIE</option> 

           <option value="SVN">SLOVENIE</option> 

           <option value="SWE">SUEDE</option> 

           <option value="UKR">UKRAINE</option> 

         </select> 
        </td> 
        <td>Produit:</td> 
        <td> 

         <select name="produit"> 

           <option value="BGR03">Gazole</option> 

           <option value="BGR10">AD Blue</option> 

           <option value="DNK03">Gazole</option> 

           <option value="DNK10">AD Blue</option> 

           <option value="GEO03">Gazole</option> 

           <option value="GEOB6">Eurodiesel</option> 

           <option value="HRV03">Gazole</option> 

           <option value="HRV10">AD Blue</option> 

           <option value="MKD03">Gazole</option> 

           <option value="ROM03">Gazole</option> 

           <option value="ROM10">AD Blue</option> 

           <option value="SRB03">Gazole</option> 

           <option value="SRB10">AD Blue</option> 

           <option value="SVQ03">Gazole</option> 

           <option value="SVQ10">AD Blue</option> 

           <option value="SWE03">Gazole</option> 

           <option value="SWE06">Biodiesel</option> 

           <option value="SWE95">HVO Diesel</option> 

           <option value="SWE10">AD Blue</option> 

           <option value="FRA03">Gazole</option> 

           <option value="FRA01">GNR</option> 

           <option value="FRA10">AD Blue</option> 

           <option value="FRAGC">GNC</option> 

           <option value="FRA13">Super sans plomb</option> 

           <option value="XXX95">HVO Diesel</option> 

           <option value="XXXGC">GNC</option> 

           <option value="XXX13">Super sans plomb</option> 

           <option value="XXX10">AD Blue</option> 

           <option value="XXX06">Biodiesel</option> 

           <option value="XXX04">Fioul</option> 

           <option value="XXX03">Gazole</option> 

           <option value="XXX01">GNR</option> 

           <option value="ESP03">Gazole</option> 

           <option value="ESP10">AD Blue</option> 

           <option value="DEU03">Gazole</option> 

           <option value="DEU95">HVO Diesel</option> 

           <option value="DEU06">Biodiesel</option> 

           <option value="DEU10">AD Blue</option> 

           <option value="BEL03">Gazole</option> 

           <option value="BEL04">Fioul</option> 

           <option value="BEL01">GNR</option> 

           <option value="BEL09">GPL</option> 

           <option value="BEL10">AD Blue</option> 

           <option value="BEL13">Super sans plomb</option> 

           <option value="UKR03">Gazole</option> 

           <option value="NLD03">Gazole</option> 

           <option value="NLD06">Biodiesel</option> 

           <option value="NLD10">AD Blue</option> 

           <option value="NLD13">Super sans plomb</option> 

           <option value="LUX03">Gazole</option> 

           <option value="LUX04">Fioul</option> 

           <option value="LUX10">AD Blue</option> 

           <option value="LUX13">Super sans plomb</option> 

           <option value="CZE03">Gazole</option> 

           <option value="CZE10">AD Blue</option> 

           <option value="AUT03">Gazole</option> 

           <option value="AUT94">BioMix 30/70</option> 

           <option value="AUT88">BioMix 70/30</option> 

           <option value="AUT06">Biodiesel</option> 

           <option value="AUT89">BioMix 50/50</option> 

           <option value="AUT10">AD Blue</option> 

           <option value="AUT02">Super</option> 

           <option value="POL03">Gazole</option> 

           <option value="POL10">AD Blue</option> 

           <option value="HUN03">Gazole</option> 

           <option value="HUN10">AD Blue</option> 

           <option value="ITA03">Gazole</option> 

           <option value="ITA10">AD Blue</option> 

           <option value="GBR03">Gazole</option> 

           <option value="GBR04">Fioul</option> 

           <option value="GBR13">Super sans plomb</option> 

           <option value="GBR10">AD Blue</option> 

           <option value="PRT03">Gazole</option> 

           <option value="PRT10">AD Blue</option> 

           <option value="IRL03">Gazole</option> 

           <option value="IRL04">Fioul</option> 

           <option value="IRL10">AD Blue</option> 

           <option value="IRL13">Super sans plomb</option> 

           <option value="RUS03">Gazole</option> 

           <option value="BLR03">Gazole</option> 

           <option value="LTU03">Gazole</option> 

           <option value="LTU10">AD Blue</option> 

           <option value="SVN03">Gazole</option> 

           <option value="SVN06">Biodiesel</option> 

           <option value="SVN10">AD Blue</option> 

         </select> 
        </td> 
        </tr> 
        <tr> 
        <td style="padding-top:5px">Date application:</td> 
        <td style="padding-top:5px"><input name="date" class="inDate" onclick="ds_sh(this,'');" readonly="readonly" style="cursor: text;margin-bottom:5px;" onChange="DC.IsValidDate('date');" value="12/07/2017"></td> 
        <script language="JavaScript"> 
           var DC = null; 
           // On instancie un DateControl 
           DC = new DateControl(); 
           DC.Add("date", document.listePrixParStation.date); 
           DC.SetDateFormat("date", "jj/mm/aaaa"); 
           // On change un message d'erreur 
           DC.SetErrMsg("date", "Le format de la date de bareme n'est pas valide (dd/MM/YYYY)"); 
           </script> 
        </td> 
        <td colspan="2">&nbsp;</td> 
        </tr> 
        <tr> 
        <td colspan="4" style="text-align:center"> 
         <div class="btn btn-primary" onclick="valideForm()"> 
          Rechercher 
         </div> 
        </td> 
        </tr> 
        </table> 
        </form> 
       </div> 
       <br> 


       <div id="formulaire"> 
        <table width="700"> 
         <tr> 
          <td class="td_intitule_liste" nowrap>Pays</td> 
          <td class="td_intitule_liste" nowrap>Station</td> 
          <td class="td_intitule_liste" nowrap>Numéro station</td> 
          <td class="td_intitule_liste" nowrap>Zone de Prix</td> 
          <td class="td_intitule_liste" nowrap>Date application</td> 
          <td class="td_intitule_liste" nowrap>Devise</td> 
          <td class="td_intitule_liste" nowrap>HT</td> 
          <td class="td_intitule_liste" nowrap>TTC</td> 
         </tr> 

          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">ALLAND</td> 
           <td class="td_saisie">6831</td> 
           <td class="td_saisie">A</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.93€/l</td> 
           <td class="td_saisie">1.116€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">AMSTETTEN</td> 
           <td class="td_saisie">6863</td> 
           <td class="td_saisie">A</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.93€/l</td> 
           <td class="td_saisie">1.116€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">ANTHERING</td> 
           <td class="td_saisie">6843</td> 
           <td class="td_saisie">B</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9592€/l</td> 
           <td class="td_saisie">1.151€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">ARNOLDSTEIN EURONOVA</td> 
           <td class="td_saisie">6832</td> 
           <td class="td_saisie">A</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.93€/l</td> 
           <td class="td_saisie">1.116€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">ARNOLDSTEIN THORL MAGLERN</td> 
           <td class="td_saisie">6823</td> 
           <td class="td_saisie">C</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9708€/l</td> 
           <td class="td_saisie">1.165€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">AUTOHOF KUFSTEIN</td> 
           <td class="td_saisie">6862</td> 
           <td class="td_saisie">A</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.93€/l</td> 
           <td class="td_saisie">1.116€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">BRIXLEGG</td> 
           <td class="td_saisie">6853</td> 
           <td class="td_saisie">A</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.93€/l</td> 
           <td class="td_saisie">1.116€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">BUERS</td> 
           <td class="td_saisie">6833</td> 
           <td class="td_saisie">C</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9708€/l</td> 
           <td class="td_saisie">1.165€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">FLACHAU</td> 
           <td class="td_saisie">6859</td> 
           <td class="td_saisie">B</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9592€/l</td> 
           <td class="td_saisie">1.151€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">GMUEND</td> 
           <td class="td_saisie">6824</td> 
           <td class="td_saisie">C</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9708€/l</td> 
           <td class="td_saisie">1.165€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">GRAZ AIRPORT</td> 
           <td class="td_saisie">6864</td> 
           <td class="td_saisie">A</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.93€/l</td> 
           <td class="td_saisie">1.116€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">HAUS IM ENNSTAL</td> 
           <td class="td_saisie">6858</td> 
           <td class="td_saisie">B</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9592€/l</td> 
           <td class="td_saisie">1.151€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">HIMBERG</td> 
           <td class="td_saisie">6869</td> 
           <td class="td_saisie">B</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9592€/l</td> 
           <td class="td_saisie">1.151€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">HOERBRANZ 1</td> 
           <td class="td_saisie">6834</td> 
           <td class="td_saisie">C</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9708€/l</td> 
           <td class="td_saisie">1.165€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


          <tr> 
           <td class="td_saisie">AUT</td> 
           <td class="td_saisie">HOERBRANZ 2</td> 
           <td class="td_saisie">6840</td> 
           <td class="td_saisie">C</td> 
           <td class="td_saisie">11 juil. 2017</td> 
           <td class="td_saisie">EUR</td> 
           <!-- Start FLG XNET-1579 : Affichage devise + unite avec le prix --> 
           <td class="td_saisie">0.9708€/l</td> 
           <td class="td_saisie">1.165€/l</td> 
           <!-- End FLG XNET-1579 --> 
          </tr> 


         <tr><td class="paragraphe" colspan="9"> 
           Page&nbsp; 


            1 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=2&pays=XXX&produit=XXX03&date=12/07/2017">2</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=3&pays=XXX&produit=XXX03&date=12/07/2017">3</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=4&pays=XXX&produit=XXX03&date=12/07/2017">4</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=5&pays=XXX&produit=XXX03&date=12/07/2017">5</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=6&pays=XXX&produit=XXX03&date=12/07/2017">6</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=7&pays=XXX&produit=XXX03&date=12/07/2017">7</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=8&pays=XXX&produit=XXX03&date=12/07/2017">8</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=9&pays=XXX&produit=XXX03&date=12/07/2017">9</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=10&pays=XXX&produit=XXX03&date=12/07/2017">10</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=11&pays=XXX&produit=XXX03&date=12/07/2017">11</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=12&pays=XXX&produit=XXX03&date=12/07/2017">12</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=13&pays=XXX&produit=XXX03&date=12/07/2017">13</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=14&pays=XXX&produit=XXX03&date=12/07/2017">14</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=15&pays=XXX&produit=XXX03&date=12/07/2017">15</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=16&pays=XXX&produit=XXX03&date=12/07/2017">16</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=17&pays=XXX&produit=XXX03&date=12/07/2017">17</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=18&pays=XXX&produit=XXX03&date=12/07/2017">18</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=19&pays=XXX&produit=XXX03&date=12/07/2017">19</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=20&pays=XXX&produit=XXX03&date=12/07/2017">20</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=21&pays=XXX&produit=XXX03&date=12/07/2017">21</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=22&pays=XXX&produit=XXX03&date=12/07/2017">22</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=23&pays=XXX&produit=XXX03&date=12/07/2017">23</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=24&pays=XXX&produit=XXX03&date=12/07/2017">24</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=25&pays=XXX&produit=XXX03&date=12/07/2017">25</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=26&pays=XXX&produit=XXX03&date=12/07/2017">26</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=27&pays=XXX&produit=XXX03&date=12/07/2017">27</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=28&pays=XXX&produit=XXX03&date=12/07/2017">28</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=29&pays=XXX&produit=XXX03&date=12/07/2017">29</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=30&pays=XXX&produit=XXX03&date=12/07/2017">30</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=31&pays=XXX&produit=XXX03&date=12/07/2017">31</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=32&pays=XXX&produit=XXX03&date=12/07/2017">32</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=33&pays=XXX&produit=XXX03&date=12/07/2017">33</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=34&pays=XXX&produit=XXX03&date=12/07/2017">34</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=35&pays=XXX&produit=XXX03&date=12/07/2017">35</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=36&pays=XXX&produit=XXX03&date=12/07/2017">36</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=37&pays=XXX&produit=XXX03&date=12/07/2017">37</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=38&pays=XXX&produit=XXX03&date=12/07/2017">38</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=39&pays=XXX&produit=XXX03&date=12/07/2017">39</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=40&pays=XXX&produit=XXX03&date=12/07/2017">40</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=41&pays=XXX&produit=XXX03&date=12/07/2017">41</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=42&pays=XXX&produit=XXX03&date=12/07/2017">42</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=43&pays=XXX&produit=XXX03&date=12/07/2017">43</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=44&pays=XXX&produit=XXX03&date=12/07/2017">44</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=45&pays=XXX&produit=XXX03&date=12/07/2017">45</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=46&pays=XXX&produit=XXX03&date=12/07/2017">46</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=47&pays=XXX&produit=XXX03&date=12/07/2017">47</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=48&pays=XXX&produit=XXX03&date=12/07/2017">48</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=49&pays=XXX&produit=XXX03&date=12/07/2017">49</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=50&pays=XXX&produit=XXX03&date=12/07/2017">50</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=51&pays=XXX&produit=XXX03&date=12/07/2017">51</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=52&pays=XXX&produit=XXX03&date=12/07/2017">52</A> 



            <A HREF="/website/v2/jsp/prix/prixParStation.jsp?numPage=53&pays=XXX&produit=XXX03&date=12/07/2017">53</A> 


           </td> 
         </tr> 
        <tr><td colspan="9">781&nbsp;Prix sélectionné(s)</td></tr> 
        </table> 

       <br> 


</body> 
</html> 

的xpath例如: // * [@ ID = 「formulaire」] /表/ tbody的/ TR [ 2]/td [2]

回答

0

提供的HTML不包含<tbody>標記。 Chrome(和其他瀏覽器)自動插入它。你的XPath不應該包含它。

不過,我想提出一個更可讀的版本:

// ... 
$xpath = new DOMXPath($thispage); 

$degalines_kainos = []; 
$rows = $xpath->query("//*[@id='formulaire']/table/tr"); 
foreach($rows as $i=>$row) { 
    if($i == 0) continue; // header row 
    $cells = $xpath->query("./td",$row); 
    $degalines_kainos[] = [ 
     'stotis' => $cells->item(1)->textContent, 
     'kaina_be_pvm' => $cells->item(6)->textContent, 
     'kaina_su_pvm' => $cells->item(7)->textContent 
    ]; 
} 

foreach($degalines_kainos as $item) { 
    printf("<b>Degalinè:</b> %s, <b>kaina be PVM:</b> %s, <b>kaina su PVM:</b> %s<br />", 
     $item['stotis'], $item['kaina_be_pvm'], $item['kaina_su_pvm']); 
} 

值得注意的是,這使得它更清楚,你要掃描的錶行,並得到各行的內容。您的原始代碼需要閱讀所有內容才能理解。

+0

嗯,你的建議看起來更好,更清潔。但不幸的是,該代碼爲我返回空窗口。 – seb

+0

那麼,你不知道問題可能在這裏? – seb