我想做的是制作一个机器人,它可以使用我的帐户登录网站并自动完成一些工作(当然是合法工作)。
例如,论坛中的一篇帖子可能有数千条评论,分为数百页。该帖子只能由注册用户查看。我希望在那里找到特定用户的评论,我希望 PHP 机器人使用我的帐户登录,一页一页地阅读每个评论页面并提取该特定用户的评论并将它们显示给我。
当然这只是一个例子。我可以进行提取和解析,但我似乎无法让机器人登录并继续前进。我只是 PHP 的初学者,我尝试了以下方法:
使用我自己的表单将帖子数据传递到网站的登录页面,但没有成功,因为它一直说引用者无效。
我手动登录,然后在新选项卡中打开我的脚本,但它也不起作用,它要求机器人再次登录。
那么你能给我一个关于如何做到这一点的想法吗?基本上它需要转到登录页面,以某种方式输入用户名和密码,登录,转到特定页面,然后做一些事情。
顺便问一下,这也可以用 JavaScript 完成吗?
谢谢。
您需要 php_curl 进行身份验证,然后一旦获得 session ,就可以进行提取。像这样:
$host = curl_init($url);
curl_setopt($host, CURLOPT_HTTPHEADER, array('Content-Type: application/xml', $additionalHeaders));
curl_setopt($host, CURLOPT_HEADER, 1);
curl_setopt($host, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($host, CURLOPT_TIMEOUT, 30);
curl_setopt($host, CURLOPT_POST, 1);
curl_setopt($host, CURLOPT_POSTFIELDS, $payloadName);
curl_setopt($host, CURLOPT_RETURNTRANSFER, TRUE);
$return = curl_exec($host);
curl_close($host);