使用file_get_contents
,我打开一个Internet URL并获取该网页的内容。
在HTML内部有许多相同的span类标记:
<span class="always-the-same-class">always dynamic text</span>
现在,我想获得一个包含任何此标记中包含的所有“动态文本”的数组。没有必要消除重复的条目(我需要它们)。
这可能吗?我该怎么办?
答案 0 :(得分:2)
如果我理解正确,那必须是PHP,因为它在服务器上,而不是在浏览器中。所以我会做像
这样的事情$html=file_get_contents(HTML_URL);
$a=preg_match_all("/\<span class\=\"always-the-same-class\"\>(.*?)\<\/span\>/",$html,$b);
echo $a;
print_r($b[1]);
$ a有命中数,$ b [1]命中
针对
进行了测试<html>
.. blah ..
<body>
.. blah ..
<span class="always-the-same-class">always dynamic text A</span>
<span class="always-the-same-class">always dynamic text B</span>
<span class="always-the-same-class">always dynamic text C</span>
.. blah ..
</body>
</html>
,输出
3
Array
(
[0] => always dynamic text A
[1] => always dynamic text B
[2] => always dynamic text C
)
答案 1 :(得分:0)
jquery的:
var spanText = $('.always-the-same-class').text();
答案 2 :(得分:0)
您可以使用PHP中提供的DOMDocument类来解析此内容。将内容加载到dom文档后,您可以使用过滤掉span标记
$content->getElementsByTagName('span');
完成此操作后,您可以按标签属性过滤结果并获取内容。