在没有api的情况下验证url中的数据


validate data from url without api

你好,StackOverlow研究员,

我正在尝试为CA建立一个基于PHP的论坛。我希望论坛只对CA开放。现在,在注册页面上会询问他们的会员号码。需要从另一个URL验证此成员身份号码。现在,问题是另一个网站没有为此提供任何api,必须手动输入会员号并提交才能获得会员详细信息。

可以查看状态的网站的URL为:http://220.225.242.179/locm.asp

样本会员编号:406691

该网站使用帖子数据,因此不能通过URL传递任何参数。

有什么可以自动化的吗?或者我需要手动批准所有注册?

您可以创建一个脚本来抓取该链接的内容。问题是,每次网站更新时,你都必须维护这个脚本。

由于该表单没有任何captcha或阻止自动查询的机制,因此可以轻松设置。

您可以使用CURL:进行张贴请求

//set POST variables
$url = 'http://220.225.242.179/locm.asp';
$fields = array(
    'mrn' => "406691",
);
//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);

查看以下链接:

https://github.com/fabpot/goutte

http://www.jacobward.co.uk/web-scraping-with-php-curl-part-1/

http://www.amazon.com/dp/1593271204/?tag=stackoverfl08-20