可能重复:
How to implement a web scraper in PHP?
How to parse and process HTML with PHP?
我需要抓取一个页面并获取特定div的内容。我有php和javascript作为我的两个主要选项。怎么办呢?
答案 0 :(得分:3)
有很多方法可以获取网址的内容:
第一种方法:
http://simplehtmldom.sourceforge.net/
Simple HTML DOM Parser
第二种方法:
<?php
$contents = file_get_contents("http://www.url.com");
$contents = strip_tags($contents, "<div>");
preg_match_all("/<div/>(?:[^<]*)<\/div>/is", $contents, $file_contents);
?>
第三种方法:
`You can use jquery like Selectors :`
答案 1 :(得分:2)
这是PHP的基本方法,它以纯文本形式返回内容。但是,您可以考虑根据自己的特殊需要修改正则表达式。
<?php
$link = file_get_contents("http://www.domain.com");
$file = strip_tags($link, "<div>");
preg_match_all("/<div/>(?:[^<]*)<\/div>/is", $file, $content);
print_r($content);
?>
答案 2 :(得分:2)
您可以使用此处记录的SimpleDomParser http://simplehtmldom.sourceforge.net/manual.htm 虽然它需要PHP5 +,但是好的是你可以在HTML页面上找到带有选择器的标签,就像jQuery一样。
答案 3 :(得分:1)
特别是对于jQuery,如果你有div
,如下所示:
<div id="cool_div">Some content here</div>
您可以使用jQuery来获取div
的内容,如下所示:
$('#cool_div').text(); // will return text version of contents...
$('#cool_div').html(); // will return HTML version of contents...
如果您使用PHP生成页面内容,那么您应该能够对内容进行合理处理,并在将内容返回到屏幕并显示之前对其进行操作。希望这有帮助!
答案 4 :(得分:0)
使用PHP,您可以尝试DOMDocument类和 getElements()函数