我正在尝试抓取网站以提取 XHTML 数据以保存为 PHP 中的变量。
该网站使用 AJAX,这意味着我正在寻找的数据是在 XMLHttpRequest 之后使用搜索字符串返回的,例如http://website.com/ajax.php?mid=2&pid=4
我尝试设置从 Chrome 和 Firefox 获得的请求标头(略有不同),并包括它们尝试使用curl_setop()
和stream_context_create()
选项file_get_contents()
,但数据仍未返回。当我在 Chrome 中检查脚本的请求标头时,它会显示该方法,GET
即使它已设置为POST
. 它对 cURL 和流上下文都执行此操作。
该网站不需要登录,但我注意到它发送会话 cookie 作为请求的一部分,我也将其包含在 HTTP 请求中,但无济于事。
需要注意的另一点是,Content-Length
从请求标头中删除值会立即返回一个空白页面,而将其保留在超时前会保持加载大约一分钟,但这可能无关紧要。
我的问题是有没有其他人使用 HTTP 标头处理 PHP 和 AJAX 请求的经验,为什么我在将其GET
指定为时会看到一个请求POST
?
提前感谢您的任何见解。