Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用PHP制作一个机器人来登录网站并在网站上做一些事情_Javascript_Php_Login_Automation_Bots - Fatal编程技术网

Javascript 如何使用PHP制作一个机器人来登录网站并在网站上做一些事情

Javascript 如何使用PHP制作一个机器人来登录网站并在网站上做一些事情,javascript,php,login,automation,bots,Javascript,Php,Login,Automation,Bots,我正在尝试做的是制作一个机器人,它将使用我的帐户登录到一个站点,并自动完成一些工作(当然是合法的工作) 例如,论坛中可能有一篇帖子,数千条评论被分成数百页。文章只能由注册用户查看。我希望找到一个特定用户的评论,我希望一个PHP机器人登录我的帐户,阅读每个评论页一个接一个,并提取该特定用户的评论,并显示给我 这当然只是一个例子。我可以进行提取和解析,但我似乎无法真正让机器人登录并继续。我只是PHP的初学者,我尝试了以下几点: 使用我自己的表单将post数据传递到站点的登录页面,但由于它不断显示无效

我正在尝试做的是制作一个机器人,它将使用我的帐户登录到一个站点,并自动完成一些工作(当然是合法的工作)

例如,论坛中可能有一篇帖子,数千条评论被分成数百页。文章只能由注册用户查看。我希望找到一个特定用户的评论,我希望一个PHP机器人登录我的帐户,阅读每个评论页一个接一个,并提取该特定用户的评论,并显示给我

这当然只是一个例子。我可以进行提取和解析,但我似乎无法真正让机器人登录并继续。我只是PHP的初学者,我尝试了以下几点:

  • 使用我自己的表单将post数据传递到站点的登录页面,但由于它不断显示无效的referer,因此无法工作

  • 我手动登录,然后在一个新选项卡中打开脚本,但它也不起作用,它要求bot再次登录

  • 你能告诉我怎么做吗?基本上,它需要转到登录页面,以某种方式键入用户名和密码,登录,转到特定页面,然后执行一些操作

    顺便问一下,JavaScript也能做到这一点吗


    谢谢。

    您需要php\u curl进行身份验证,然后一旦获得会话,就可以进行提取。大概是这样的:

    $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);
    

    谢谢。虽然我不知道如何使用curl,但我可以开始学习。感谢您的指导:)如果您使用javascript,那么您将得到跨源错误。所以我认为js不会有多大帮助。