【问题标题】:Scrapy - Submit form with multiple buttonsScrapy - 使用多个按钮提交表单
【发布时间】:2017-07-24 21:32:21
【问题描述】:

我开始使用scrapy,我设法爬过一系列表单,但最后一个表单有两个按钮,拒绝和接受。

<input name="_eventId_AttributeReleaseRejected" style="margin-right: 30px;" type="submit" value="Reject"> 
<input name="_eventId_proceed" type="submit" value="Accept">

我如何告诉 scrapy 选择 Accept ? 我用了这段代码

def thirdForm(self, response):
    yield FormRequest.from_response(response, 
        formname="Form",
        callback=self.parseResponse)

但它默认选择拒绝,我怎样才能通过这个?

【问题讨论】:

    标签: python html web-scraping forms scrapy-spider


    【解决方案1】:

    我找到了方法,您可以使用名为clickdata 的属性指定要提交哪个按钮 它是一个 Python 字典,包含您要提交的按钮的名称和/或值。

    这是编辑后的代码

    def thirdForm(self, response):
            yield FormRequest.from_response(response, 
                formname="Form",
                clickdata={"name":"_eventId_proceed", 'value' :'Accept'},
                callback=self.parseResponse)
    

    【讨论】:

      猜你喜欢
      • 2012-01-23
      • 2021-08-11
      • 2017-05-03
      • 2016-04-06
      • 1970-01-01
      • 2012-04-08
      • 1970-01-01
      • 2014-09-28
      相关资源
      最近更新 更多