1

Symfony2、Goutte、および DomCrawler を使用してデータをスクレイピングしようとしています。内の属性の値を取得する必要があるというトリッキーな状況があります<td>

作業セクション:

    $query = "//td[normalize-space(text()) = 'Event Title']/following-sibling::td[1]";
    $crawler->filterXPath($query)->each(function($crawler, $i) {
        echo $crawler->text();// . $i . PHP_EOL;
    });


<tr>
    <td>Event Title</td> 
    <td>the title is here</td> 
</tr>

さて、それは次のとおりです。

<tr>
    <td>Event Title</td> 
    <td><input value="thisiswhatIneed"></td> 
</tr>

そして、セレクターを変更しようとしています

$query = "//td[normalize-space(text()) = 'Presenter']/following-sibling::td[1]/input[value]"; 

<input>属性 value="" を取得するために にアクセスできるように、 をトラバースし続ける方法はありますか?

4

1 に答える 1

1

valueはの属性であるためinput、xpath クエリを少し変更する必要があります。

$query = "//td[normalize-space(text()) = 'Presenter']/following-sibling::td[1]/input/@value"; 

ここで例を参照してください。

于 2015-04-16T07:07:26.540 に答える