###前提・実現したいこと
以下の様な入れ子構造のhtmlで、foo0とfoo1を取得したい場合ですが、simple_html_domでは前方一致での属性指定が可能ということなので、1つ目のループで前方一致のuid○を処理し、2つ目のループでdivの1つ目を処理しようとしたのですが、期待通りに動いていません。
###スクレイピング対象のHTMLコード
html
1<div id="uid0"> 2 <div>foo0</div> 3 <div>bar0</div> 4</div> 5<div id="uid1"> 6 <div>foo1</div> 7 <div>bar1</div> 8</div>
###該当のソースコード
php
1<? 2 3require_once("simple_html_dom.php"); 4 5$src = " 6 <div id=\"uid0\"> 7 <div>foo</div> 8 <div>bar</div> 9 </div> 10 <div id=\"uid1\"> 11 <div>foo</div> 12 <div>bar</div> 13 </div> 14"; 15 16$html = str_get_html($src); 17 18foreach($html->find("div[id^=uid]") as $element){ 19 foreach($element->find("div",0) as $element2){ 20 print $element2."\n"; 21 } 22} 23 24?>
上記、正常に取得するにはどのようにループ処理を行うべきでしょうか?
ギークな皆さんのご回答お待ちしています。
よろしくお願い致します!

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/22 04:05