我想实现一个可以自动填充表格的“机器人”.
有没有一个解决方案,你可以填写页面上的数据,例如form1.html并提交它,等到下一页并提交form2.html上的数据,依此类推……
最后,它还应该“点击”按钮以获取表单创建的文件.
有没有一个解决方案,你可以填写页面上的数据,例如form1.html并提交它,等到下一页并提交form2.html上的数据,依此类推……
最后,它还应该“点击”按钮以获取表单创建的文件.
我希望这个’机器人’会使用一些机密信息,因此无法使用客户端技术完成.
我正在考虑PHP – 将其构建为网站Web服务,因此您可以将数据传输到Web地址或.Net中的Web服务.
我在这里有点新意见……任何人都可以提供一些示例或教程来做这件事.如果存在一些我在这里没有提到的技术来实现它,我也很乐意尝试它们.
表单通过发布数据来工作,因此您可以将数据发布到服务器,而不是使机器人在每个字段中键入内容并单击提交.
那么CURL:
- //set POST variables
- $url = 'http://domain.com/get-post.PHP';
- $fields = array(
- 'lname' => urlencode($last_name),'fname' => urlencode($first_name),'title' => urlencode($title),'company' => urlencode($institution),'age' => urlencode($age),'email' => urlencode($email),'phone' => urlencode($phone)
- );
- //url-ify the data for the POST
- foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
- rtrim($fields_string,'&');
- //open connection
- $ch = curl_init();
- //set the url,number of POST vars,POST data
- curl_setopt($ch,CURLOPT_URL,$url);
- curl_setopt($ch,CURLOPT_POST,count($fields));
- curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
- //execute post
- $result = curl_exec($ch);
- //close connection
- curl_close($ch);
来自this site的片段.