【问题标题】:python RoboBrowser clicking on radio buttonspython RoboBrowser单击单选按钮
【发布时间】:2017-02-19 09:51:58
【问题描述】:

我一直在尝试修复下面的代码一段时间,由于某种原因,代码的每个部分都可以正常工作,除了必须单击单选按钮的部分,它显示“ValueError:在字段中找不到选项 1”但是有一个选项是 1,它是 0 或 1。我曾经玩过 mechanize 我知道我大部分时间都在做什么,但是有人可以帮忙吗?请&谢谢

from robobrowser import RoboBrowser
browser = RoboBrowser(parser='html.parser')
browser.open(url)

form = browser.get_forms()[0] 
form['username'] = 'foo'
form['password'] = 'foo'
form['gender'] = [1] #Radio button

browser.session.headers['Referer'] = url
browser.submit_form(form)

【问题讨论】:

    标签: python-2.7 robobrowser


    【解决方案1】:

    这个问题和这个一样:Setting a plain checkbox with robobrowser

    这段代码应该适合你:

    form['gender'].options = ['1']
    form['gender'].value = '1'
    

    【讨论】:

      【解决方案2】:

      有时 RoboBrowser 不会对同名的单选按钮进行分组,因此您会发现自己有两个单独的“性别”字段。

      这里有一个解决方案:

      radios = form.fields.poplist('gender')
      form.add_field(radios[0])
      form['gender'].options += ['1']
      form['gender'] = '1'
      

      【讨论】:

        猜你喜欢
        • 2019-03-17
        • 2015-10-18
        • 2017-09-12
        • 1970-01-01
        • 1970-01-01
        • 2018-11-02
        • 1970-01-01
        • 1970-01-01
        • 2023-03-05
        相关资源
        最近更新 更多