我不确定这是否可行。 我想要一个php脚本在执行时,它将转到一个页面(在不同的域上)并获取它的html内容并在html里面有链接,并且该脚本能够获得每个链接的href。
html代码:
<div id="somediv">
<a href="http://yahoo.com" class="url">Yahoo</a>
<a href="http://google.com" class="url">Google</a>
<a href="http://facebook.com" class="url">Facebook</a>
</div>
输出代码(php将回显)将是
http://yahoo.com
http://google.com
http://facebook.com
我听说过php中的cURL可以做类似这样的事情但不完全像这样,我有点困惑,我希望有些人可以指导我。
感谢。
答案 0 :(得分:2)
使用DOM和XPath:
<?php
$doc = new DOMDocument();
$doc->loadHTMLFile("http://www.example.com/"); // or you could load from a string using loadHTML();
$xpath = new DOMXpath($doc);
$elements = $xpath->query("//div[@id='somediv']//a");
foreach($elements as $elem){
echo $elem->getAttribute('href');
}
BTW:你应该阅读DOM和XPath。