我如何使用 file_get_contents 和 preg_match 屏幕抓取这样的页面?
我有一个包含许多 HTML 行的页面,如下所示:
<ul><li><a href='a_silly_link_that_changes_each_line.php'>the_content_i_need</a></li></ul>
现在,如您所见,该行中有一个链接,不幸的是,该链接在每一行上都发生了变化。
因此,我需要一种方法来抓取该行中的内容,而不让链接妨碍。
我也尝试过像这样抓取: .php'>(*.)
但这不好,因为它返回分配不需要的内容。
另外,因为页面上有很多行我需要从中获取内容,所以我可以循环
吗?
我正在使用 preg_match
和 file_get_contents
,但我愿意接受其他建议。 :)
I have a page with many HTML lines like this:
<ul><li><a href='a_silly_link_that_changes_each_line.php'>the_content_i_need</a></li></ul>
Now as you can see, theres a link in that line, which unfortunately changes on each line.
So I need a way to scrape the content in that line, without letting the link get in the way.
I've also tried to scrape like this: .php'>(*.)</a></li></ul>
but thats no good, as it returns allot of unwanted content.
Also, because there are many lines on the page that i need to take the content from, could i just loop
through, somehow?
I'm using preg_match
and file_get_contents
but am open to other suggestions. :)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
来自:PHP 解析 HTML 代码
使用类似以下内容:
在本例中,
$li- >firstChild->nodeValue
将是linky
。应该可以了:)
From: PHP Parse HTML code
Use something like:
In this case,
$li->firstChild->nodeValue
will belinky
.That should do it :)
尝试使用
这将匹配文件中的所有链接。
*?
表示“匹配 0-inf 字符,但字符尽可能少”(贪婪杀手),这样您就不会得到任何不需要的内容。Try using
This will match all links inside your file.
*?
means "match 0-inf characters but as little characters as possible" (greedy killer) so you won't be getting any unvanted content.