我整天都在尝试不同的 PHP HTML 解析器来进行网络抓取。他们都很好地处理了 Google.com,或者他们在主页上发布的其他类似示例。但是他们都在“ http://www.nhl.com/ice/schedulebyseason.htm ”上失败了。
最初我编写了一个 Perl 脚本来执行此操作。Perl 上的 Web::Scraper 绝对没有问题。我 5 分钟前回去了,它完美地完成了这项工作。但是我的共享主机并不真正支持 Perl。我认为,即使对于 PHP,我也坚持使用 5.3.13。
如果您尝试使用:
- PHP 简单的 HTML DOM 解析器
- 加农
他们失败了。
Call to a member function find() on a non-object
当我尝试使用返回的已解析文档时,PHP Simple 会引发异常。我认为这就是它失败的原因,返回 null 或其他。
给定 URL 后,ganon 将永远处理。
到底是怎么回事?我是 PHP 的完全新手。
PHP 简单 HTML DOM 解析器示例:
include_once('simple_html_dom.php');
$doc = file_get_html('http://www.nhl.com/ice/schedulebyseason.htm');
foreach($doc->find('img') as $img){
echo $img->id . '<br>';
}
加农:
include_once('ganon.php');
$doc = file_get_dom('http://www.nhl.com/ice/schedulebyseason.htm');