刮痧与卷曲岗位没有给出结果

时间:2016-11-19 05:57:17

标签: php curl web-scraping screen-scraping

我想废弃这个网站 - marcanet.impi.gob.mx/marcanet/controler/RegistroBusca

以下是我正在使用的代码,但我没有进入结果页面。

$form_url = "http://marcanet.impi.gob.mx/marcanet/controler/RegistroLista";
$data_to_post = array();
$data_to_post['registro'] = '1384641';
$curl = curl_init();

curl_setopt($curl,CURLOPT_URL, $form_url);
curl_setopt($curl,CURLOPT_POST, sizeof($data_to_post));
curl_setopt($curl,CURLOPT_POSTFIELDS, $data_to_post);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($curl, CURLOPT_COOKIE, "fruit=apple; colour=red");
curl_setopt($curl,CURLOPT_HTTPHEADER,array('Host: marcanet.impi.gob.mx', 'Accept-Language: en-US,en;q=0.5', 'Referer: http://marcanet.impi.gob.mx/marcanet/controler/RegistroBusca'));

$result = curl_exec($curl);
$dom = new simple_html_dom();
$htm = $dom->load($result);

echo $htm;

这给我的结果是找不到注册号。请帮忙。

1 个答案:

答案 0 :(得分:0)

您想使用字符串作为帖子正文:

$data_to_post = 'registro=1384641';

否则curl会将其作为multipart-form-data发送。

此外,您的某些选项看起来并不合适,如果您不小心,Host:标题会让您遇到麻烦。 More info on the options can be found here