我想实现一个可以自动填充表格的'机器人'。
是否有解决方案可以填写页面上的数据,例如form1.html
并提交,等到下一页并提交form2.html
上的数据,依此类推......
最后,它还应该“点击”按钮以获取表单创建的文件。
我希望这个'机器人'会使用一些机密信息,因此无法使用client side
技术完成。
我在考虑PHP
- 将其构建为网站 - 网络服务,因此您可以将数据传输到网址或.Net
中的网络服务。
如果重要,我想自动填写的网站会以ASP.NET
运行。
我在这里有点新意见......任何人都可以提供一些示例或教程来做这件事。如果存在一些我在这里没有提到的技术来实现它,我也很乐意尝试它们。
答案 0 :(得分:9)
表单通过发布数据来工作,因此您可以只将POST
数据发送到服务器,而不是创建一个可以在每个字段中输入内容的机器人,而只需action
数据到服务器。
首先获取表单字段名称和表单的//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);
。
然后CURL:
{{1}}
来自this site的摘录。
答案 1 :(得分:9)