我正在尝试抓取远程网站。我正在使用 PHP Curl,我的代码很好。我知道这一点,因为我使用了 Fiddler、Tamper Data 等来使我的代码恰到好处。但是,它仍然没有用。所以,我尝试了几个小时前就应该测试的东西:
我在浏览器中关闭了 cookie。果然,我现在搜索不到远程站点了。他们的代码需要一个 cookie 来搜索我想要抓取的产品。
有没有办法伪造/欺骗/规避以便我可以抓取网站?我可以告诉 CURL 使用我下载的 cookie 吗?我什至不知道该问什么问题。
最佳答案
看看各种curl_setopt
cookie 的参数。
您可以使用 CURLOPT_COOKIE
手动设置 cookie,或使用 CURLOPT_COOKIEJAR
和磁盘上的文件来实际存储和持久保存多个请求中的 cookie。
但是,您可能只需要一个 session cookie,手册上说默认支持它——只要您对每个请求使用相同的 curl 实例即可。如果您为每个请求创建一个新的 curl 实例,这些实例将不会共享 cookie。
关于php - 抓取一个需要 cookie 的站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5110432/