我尝试修复下面的代码已经有一段时间了,由于某种原因,代码的每一部分都能正常工作,除了它必须点击单选按钮的部分,它说"ValueError: Option 1 not found in field“,但是有一个选项是1的,要么是0,要么是1。我曾经玩过机械化,我知道我在做什么,但是有人能帮我吗?请&谢谢
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)发布于 2016-10-11 20:02:08
这和下面的问题是一样的:Setting a plain checkbox with robobrowser
下面的代码应该可以为您工作:
form['gender'].options = ['1']
form['gender'].value = '1'发布于 2018-09-18 23:21:42
有时RoboBrowser不会对具有相同名称的单选按钮进行分组,所以您可以发现自己有两个单独的“性别”字段。
这里有一个解决方案来解决这个问题:
radios = form.fields.poplist('gender')
form.add_field(radios[0])
form['gender'].options += ['1']
form['gender'] = '1'https://stackoverflow.com/questions/39967355
复制相似问题