使用 file_get_contents 仅检索 HTML 文件的一部分
可能的重复:
使用 PHP 解析 HTML 的最佳方法
我正在使用 file_get_contents()
函数用于检索远程网页并将其运行到我的表解析脚本中。但基本上,我的表解析脚本仅采用页面上的第一个表。
我尝试下载的页面有 3 个 html 表,所以我想知道是否有办法只获取第三个表?我很可能只想获取 HTML 文件中的第 30 到 60 行。有人有什么建议吗?
Possible Duplicate:
Best methods to parse HTML with PHP
I'm using the file_get_contents()
function in PHP to retrieve a remote webpage and run it into my table parsing script. But basically, my table parsing script only takes the first table on the page.
The page I'm trying to download has 3 html tables in it, so I was wondering if there was a way of only taking the third table? Most likely I'd want to only take lines 30 to 60 in the HTML file. Does anyone have any suggestions?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
没有文件下载命令可以为您解析 HTML 文件并确定需要下载的确切块。我认为没有办法下载整个内容并使用 HTML 解析器 随后获取表格。
There is no file downloading command that will parse a HTML file for you, and determine the exact chunk that needs to be downloaded. I don't think there is a way around downloading the whole thing, and using a HTML parser to fetch the table afterwards.
您可以将主文件分成三个单独的文件(每个表一次),这些文件只是“包含”到原始文件中。
然后,您只需为所需的表执行
file_get_contents
即可。编辑
作为一个例子,考虑这个文件:
并将其与这个文件进行比较:
table1.php
将简单地保存表 1 的表标签之间的所有内容,对于table2.php
和table3.php
。如果您想要表 3,请在
table3.php
上执行file_get_contents
You could split your main file up into three separate files (once for each table) which just get 'included' into the original.
Then you will just need to do a
file_get_contents
for the table that you want.Edit
As an example, consider this file:
And compare it with this file:
table1.php
will simply hold everything between the table tags for table 1, and similarly fortable2.php
andtable3.php
.If you want table 3, perform your
file_get_contents
ontable3.php