嗨,我正在抓取一个具有如下 URL 的网站
http://www.example.com/categories-Mobile-Phones.aspx#RSS=pgZZ1QQdivZZctl00_ContentPlaceHolder1_ctl00_ctl03
我已将其放入start_url
并要求回复,但我收到的回复如下
<200 http://www.example.com/categories-Mobile-Phones.aspx>
也就是说,它只是忽略了之后的内容hash tag
,所以我阅读了一些帖子并开始知道,当我们请求带有哈希标签的 url 时,服务器只会忽略哈希片段,我的意思是哈希片段用于加载一些额外的信息ajax 或 javascript requests.so 我用下面start_url
的exclamatory mark(!)
after替换了 url# tag
http://www.example.com/categories-Mobile-Phones.aspx#!RSS=pgZZ1QQdivZZctl00_ContentPlaceHolder1_ctl00_ctl03
现在的输出是
<GET http://www.example.com/categories-Mobile-Phones.aspx?_escaped_fragment_=RSS=pgZZ1QQdivZZctl00_ContentPlaceHolder1_ctl00_ctl03
我已经通过阅读这篇文章做到了这一点https://developers.google.com/webmasters/ajax-crawling/docs/getting-started
,根据这篇文章中的概念,我需要将输出 URL 转换为?_escaped_fragment_=
包含#
(我的意思是原始 URL)的 URL 以完全解析页面,而不会忽略哈希片段。如何转换它。
我希望我解释得很好,如果不是,请纠正我,让我知道如何使不忽略来自 URL 的哈希片段的scrapy 的概念。
提前致谢...............