我试图获取div标签内的所有链接。 我能够得到所有的名字,但也想获得链接。 示例Html:
<li id="u_1y_y" class="friendBrowserListUnit">
<div class="clearfix">
<a class="_8o _8t lfloat _ohe" aria-hidden="true" tabindex="-1" href="/profile.php?id=100004732455685&fref=pymk" role="presentation">
<div class="clearfix _42ef">
<div class="rfloat _ohf">
<div class="friendBrowserContentAlignMiddle">
<div class="friendBrowserNameTitle fsl fwb fcb">
<a href="/profile.php?id=100004732455685&hc_location=friend_browser&fref=pymk">Jeya Kumar</a>
</div>
<div class="friendBrowserMarginTopMini"></div>
<div class="fsm fwn fcg">
</div>
</div>
</div>
</li>
<li id="u_1y_y" class="friendBrowserListUnit">
<div class="clearfix">
<a class="_8o _8t lfloat _ohe" aria-hidden="true" tabindex="-1" href="/profile.php?id=100004732455&fref=pymk" role="presentation">
<div class="clearfix _42ef">
<div class="rfloat _ohf">
<div class="friendBrowserContentAlignMiddle">
<div class="friendBrowserNameTitle fsl fwb fcb">
<a href="/profile.php?id=100004732&hc_location=friend_browser&fref=pymk">Aman Kumar</a>
</div>
<div class="friendBrowserMarginTopMini"></div>
<div class="fsm fwn fcg">
</div>
</div>
</div>
</li>
我尝试了什么:
$message = $crawler->filter('div.friendBrowserNameTitle.fsl.fwb.fcb');
foreach ($message as $key) {
echo $key->textContent . '<br>';
}
输出:
Jeya Kumar
Aman Kumar
但如何获取链接:
/profile.php?id=100004732455685&hc_location=friend_browser&fref=pymk
/profile.php?id=100004732&hc_location=friend_browser&fref=pymk
答案 0 :(得分:0)
当用户使用Goutte发出请求时,会返回Symfony\Component\DomCrawler
个实例。 Crawler对象提供Crawler::links()实用程序方法,提供给定搜寻器对象中的所有链接。
Crawler::links()
方法将返回在其中找到的链接数组。
$links = $crawler->links();
foreach ($links as $link) {
echo $link->getUri();
}