使用SimpleHtmlDOM +登录?

时间:2010-07-27 00:17:12

标签: php login screen-scraping security

我非常成功地使用SimpleHtmlDOM PHP来抓取一些我最喜欢的网页。然而,其中一些页面要求我在获取我真正关心的信息之前登录。有没有人知道如何(或者是否可能)让这个库访问需要输入用户名和密码的页面才能获得对页面的访问权限?我迄今为止所做的一切都是从......开始的。

$html = file_get_html('http://www.google.com/');

2 个答案:

答案 0 :(得分:2)

很少有网站使用相同的身份验证机制,因此没有一种方式来始终对网站进行身份验证。

您最好的选择是使用cURL并让您的刮刀看起来像真正的浏览器。这意味着using cookies(在页面上搜索“cookie”,您可能想要使用cookie文件/ jar)并将它们存储在某处,导航到登录表单,成功提交,然后继续使用“浏览器” “进行刮擦的会议。

请确保网站不介意以这种方式刮擦。如果被发现,您可能会被禁止访问该网站,具体取决于网站所有者不喜欢抓取的数量。

答案 1 :(得分:0)

simplehtmldom的另一个问题是dom必须是正确的,因为dom中的错误会导致解析器出错并且对象将为null。