如何抓取网页代码中的URL!

data-click="{'fm':'sc'}"
target="_blank" class="c-cache">百度快照</a></div></li><li class="result" id="2"><h3 class="c-title"><a href="http://politics.caijing.com.cn/2014-03-04/113978176.html"
c47aa1abe9b7c5954&newp=c67ac54ad0c61eed12b7c7710f4392695912c10e3dd08f57358e&user=baidu&fm=sc&query=%C0%A5%C3%F7&qid=fbac825b01091098&p1=2"

data-click="{'fm':'sc'}"
target="_blank" class="c-cache">百度快照</a></div></li><li class="result" id="3"><h3 class="c-title"><a href="http://news.sohu.com/20140304/n396024436.shtml"
target="_blank" class="c-cache">百度快照</a></div></li><li class="result" id="4"><h3 class="c-title"><a href="http://china.haiwainet.cn/n/2014/0304/c232580-20359130.html"
我想抓取“<a href="”和“”“之间的网址,如何操作???谁知道???

你这个用正则工具可以提取,具体参考下面截图,如果你想要采集链接的地址,其实根本不用这么复杂的来看网页源代码,就用我截图中用到的八爪鱼采集器,可视化的,要提取链接的话,直接点击网页上的链接,会弹出一个选项问你是否要采集链接,你选择采集链接即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-12-09
以下代码可以获取到指定URL页面中的所有链接,即所有a标签的href属性:

// 获取链接的HTML代码
$html = file_get_contents('http://www.example.com');

$dom = new DOMDocument();
@$dom->loadHTML($html);

$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate('/html/body//a');

for ($i = 0; $i < $hrefs->length; $i++) {
$href = $hrefs->item($i);
$url = $href->getAttribute('href');
echo $url.'<br />';
}
这段代码会获取到所有a标签的href属性,但是href属性值不一定是链接,我们可以在做个过滤,只保留http开头的链接地址:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// 获取链接的HTML代码
$html = file_get_contents('http://www.example.com');

$dom = new DOMDocument();
@$dom->loadHTML($html);

$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate('/html/body//a');

for ($i = 0; $i < $hrefs->length; $i++) {
$href = $hrefs->item($i);
$url = $href->getAttribute('href');

// 保留以http开头的链接
if(substr($url, 0, 4) == 'http')
echo $url.'<br />';
}
第2个回答  2020-08-16
试试LmCjl在线工具,里面有抓取全站链接的工具,输入网页域名后,点击抓取即可。
相似回答