python - Scrapy:下一个按钮使用 WebForm_DoPostBackWithOptions()
问题描述
我正在尝试从https://seminovos.localiza.com/Paginas/resultado-busca.aspx?&yr=2014_2019&pc=25000_500000抓取一些信息
在此网页中,next_page 按钮具有href
以下内容:'javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$ctl42$g_f221d036_75d3_4ee2_893d_0d7b40180245$ProximaPaginaSuperior", "", true, "", "", false, true))
我可以用 Selenium 轻松做到这一点,但是使用 scrapy,我怎样才能转到下一页?
我试过类似的东西:
next_page = response.xpath('.//a[@class="item option next"]/@href').extract_first()
if next_page:
self.log(next_page)
scrapy.http.FormRequest(response.url,formdata={"eventTarget":"ctl00$ctl42$g_f221d036_75d3_4ee2_893d_0d7b40180245$ProximaPaginaSuperior","eventArgument":"","validation":"true","validationGroup":"","actionUrl":"","trackFocus":"false","clientSubmit":"true"},callback=self.parse)
在这种情况下导航到下一页的正确方法是什么?
解决方案
找出您的网络浏览器在您单击该请求时执行的请求的详细信息,并尝试根据可用数据重现它。
可以使用 scrapy 从使用 AJAX 的网站中抓取动态内容的答案吗?应该让您了解解决此问题的方法。还有一个对 Scrapy 文档的拉取请求,其中涵盖了处理这种类型的场景,您可能会发现它很有用。
推荐阅读
- jquery-ui - 为禁用的字段和按钮启用 jQueryUI 工具提示
- google-apps-script - 如何使用 Google Script 在 G-Sheets 中设置绝对引用
- python - Python 变量不包含任何数据
- c# - UWP SQLite DB OneDrive 备份和还原 C#
- postgresql - 如何在数据库中设置另一个用户名?
- excel - 基本 Excel 测验 [需要帮助]
- javascript - 谷歌地图如何拦截带有触摸板的笔记本电脑上的滑动/捏合手势?
- sql-server - 顺序编号列更新
- r - 如何选择列中具有相等值的行
- excel - 排序参考无效?