我希望有人知道,出了什么问题。我做了一个解析器来获取所有
<a href="blabla">Link</a>
标签。我在http://www.bbc.co.uk/上对其进行了测试。我测试的页面上有 261 个,我只收到前 159 个。我手动检查了它,我从它们中找到了每一个,但我得到的数组只有 159 个元素。这个限制的原因是什么?
preg_match_all('/<a\s[^\>]*href\=[\'"]?((?:http\:\/\/)?(?:[_\-a-zA-Z0-9\.]*[_a-zA-Z0-9\.\/]))*[\'"]/', $page, $matches);
我检查了一下,curl 给了我所有的页面
<html>
直到
</html>
问题是在不使用任何 DOM 的情况下制作解析器,只需 curl 和 regexp。