我正在尝试抓取一个接收POST数据的网站以返回正确的页面(没有POST它返回15个结果,POST数据返回所有结果).
目前我的代码看起来像这样:
$curl = curl_init();
curl_setopt($curl,CURLOPT_URL,"http://www.thisismyurl.com/awesome");
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, XXXXXX);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result= curl_exec($curl);
我知道我需要将我的postfields放到充满“XXXXXX”的空间中,我只是不知道在哪里挖掘post字段/值以及如何将它们组织成我传入其中的变量.
任何帮助将不胜感激!
解决方法:
如果它是一个简单的表单,那么只需提取所有表单字段并在脚本中复制它们.如果它是一些动态形式,比如javascript构建请求和使用ajax,那么你可以使用开发人员工具(例如Firefox的Firebug Net选项卡,HTTPfox等)来嗅探数据,并在发送后提取帖子数据.
无论哪种方式,一旦你知道正在发送什么字段/数据,其余的应该(相对)容易复制/构建.