我是Scrapy的新手,现在我正在开展一个项目,我需要在这个网站上使用Scrapy爬行:https://www.google.com/partners/#a_search;bdgt=10000;lang=en;locn=United%20States;motv=0;wbst=http%253A%252F%252F
我无法将整个URL传递给Scrapy中的响应,所以我使用PYCHARM来调试它,我发现我只能在#之前传递URL,有人可以帮我解决这个问题?非常感谢!!!!
答案 0 :(得分:3)
Url片段(#之后的部分)不会发送到远程Web服务器;这就是HTTP的工作原理。片段在发送请求后由浏览器处理;在Google的情况下,它会触发一些JavaScript函数等。
Scrapy不是浏览器 - 它不会评估JavaScript; Scrapy只是通过HTTP下载数据。这就是当Scrapy抓取页面时片段从URL中删除的原因 - 无法使用它。
如果您想处理此类网址片段,您有两种选择: