1

我正在尝试用scrapy刮掉这个页面:

http://www.barnesandnoble.com/s?dref=4815&sort=SA&startat=7391

我得到的响应与我在浏览器中看到的不同。浏览器响应具有正确的页面,而 scrapy 响应是:

http://www.barnesandnoble.com/s?dref=4815&sort=SA&startat=1

页。我已经尝试使用 urllib2 但仍然有同样的问题。任何帮助深表感谢。

4

1 回答 1

4

我不太明白这个问题,但通常浏览器和scrapy的不同响应是由以下原因引起的:

  • 服务器分析您的User-Agent标头,并为移动客户端或机器人返回一个特制的页面;
  • 服务器分析 cookie,并在您第一次访问时做一些特别的事情;
  • 您正在尝试像浏览器一样通过 scrapy 发出 POST 请求,但是您忘记了一些表单字段,或者输入了错误的值
  • 等等

没有通用的方法来确定什么是错误的,因为它取决于您不知道的服务器逻辑。如果幸运的话,您将分析并解决所有提到的问题并使其发挥作用。

于 2012-12-12T07:50:33.910 回答