以下の HTML コードに広告のリストがあります。必要なのは、各広告の次の要素を取得するための PHP ループです。
- 広告URL(
<a>
タグのhref属性) - 広告画像URL(
<img>
タグのsrc属性) - 広告タイトル(
<div class="title">
タグのhtmlコンテンツ)
<div class="ads">
<a href="http://path/to/ad/1">
<div class="ad">
<div class="image">
<div class="wrapper">
<img src="http://path/to/ad/1/image.jpg">
</div>
</div>
<div class="detail">
<div class="title">Ad #1</div>
</div>
</div>
</a>
<a href="http://path/to/ad/2">
<div class="ad">
<div class="image">
<div class="wrapper">
<img src="http://path/to/ad/2/image.jpg">
</div>
</div>
<div class="detail">
<div class="title">Ad #2</div>
</div>
</div>
</a>
</div>
以下の PHP コードで広告 URL を取得できました。
$d = new DOMDocument();
$d->loadHTML($ads); // the variable $ads contains the HTML code above
$xpath = new DOMXPath($d);
$ls_ads = $xpath->query('//a');
foreach ($ls_ads as $ad) {
$ad_url = $ad->getAttribute('href');
print("AD URL : $ad_url");
}
しかし、他の 2 つの要素 (画像の URL とタイトル) を取得できませんでした。何か案が?