-1
我想要报废Lulu webstore。我遇到以下问题。从JavaScript呈现的网站刮取数据
- 网站内容动态加载。
- 该网站试图访问时,重定向选择国家页面。
- 选择国家后,它弹出选择交货地点,然后重定向到主页。
- 当您尝试以编程方式点击结束页面时,您会收到一个空的响应,因为内容是动态加载的。
我有一个结束URL的列表,我必须从中抓取数据。例如,请考虑mobile accessories。现在我想
- 获取该页面直接,这是动态加载绕过选择国家,选择位置弹出窗口,这样我就可以用我的Scrapy XPath选择提取数据的HTML源代码。
- 如果您建议我使用Selenium,PhantomJS,Ghost或其他来处理动态内容,请理解我在处理将发送给Scrapy的所有动态内容后,希望在Web浏览器中使用最终的HTML源代码。
- 另外,我尝试使用代理来跳过选择国家弹出窗口,但仍然加载它并选择交付地点。
- 我试过使用Splash,但是它返回了我选择国家页面的来源。
好的内容意味着AJAX调用。只需获取请求的结构,然后使用产品的ID进行循环调用即可。通常你只需要'request'模块,与'BeautifulSoup'结合使用。我猜也是一样。 –
@Cal Eliacheff感谢您的评论,但你的方式问题是,即使我用cookie和用户代理与web浏览器一样提出请求,但我仍然得到相同的响应。我需要服务器和脚本之间的响应,它将处理这些动态内容并给出最终结果,以便我可以将它们馈送给scrapy。 – Mani
你应该更好地看待电话。该位置存储在您从“SelectLocation.aspx”中获得的cookie中。例如:'http://www.luluwebstore.com/SelectLocation.aspx?Location = 13241&DeliveryMode = H&ReturnUrl = http:// www.luluwebstore.com'允许您绕过国家选择。它看起来像只有GET请求,通常使用更简单。恕我直言,你不希望为这类网站使用scrapy。 –