在类似的post问一个关于将表单值从[开]改为不开的问题,这个问题只是设置了'True'和'False'的值使用机械化)。scrapy FormRequest True/False on /'off'Checked Boxes
这将如何在scrapy FormRequest.from_response
中完成?
编辑
例如,使用机械化获取形式信息,
这是自带的网页形式的默认。
默认情况下,在表格上的一切检查:
<CheckboxControl(ac=[*on])>
type=checkbox, name=ac value=['on']
<CheckboxControl(<None>=[*on])>
type=checkbox, name=None value=[]
<TextControl(p=)>
type=text, name=p value=
<CheckboxControl(pr[]=[*0, *1, *2])>
type=checkbox, name=pr[] value=['0', '1', '2']
<CheckboxControl(a[]=[*0, *1, *2, *3, *4])>
type=checkbox, name=a[] value=['0', '1', '2', '3', '4']
<CheckboxControl(pl=[*on])>
type=checkbox, name=pl value=['on']
<CheckboxControl(sp[]=[*1, *2, *3])>
type=checkbox, name=sp[] value=['1', '2', '3']
<SelectControl(pp=[0, 1, *2, 3])>
type=select, name=pp value=['2']
注意 '交流', '<None>
' 和 'PL'。
他们有[*上]的值
的目标是将其“关闭”(?)(取消他们)
FormRequest.from_response(response, formnumber=0, formdata={'pr[]': '2', 'sp[]': '3', 'pp': '3', 'a[]': ['3', '4']}))
这将返回一个形式每FORMDATA修改后的盒子。 尚未检查formdata中提及的那些键。
按照以上职位的例子:
FormRequest.from_response(response, formdata={'live': 'False'})
我也做了FormRequest具有多种价值: '假', '真', '',[ ''], '上', '关'和'无',但似乎无法得到正确的回应。
有什么建议吗?
编辑:
有尝试:
FormRequest(url, formdata = {'pl': 'False'}, callback=parse_this)
FormRequest(url, formdata = {'pl': 'off'}, callback=parse_this)
FormRequest(url, formdata = {'pl': ''}, callback=parse_this)
FormRequest(url, formdata = {'pl': 'None'}, callback=parse_this)
FormRequest(url, formdata = {'pl': None}, callback=parse_this)
FormRequest.from_response(response, formdata = {'pl': 'False'})
FormRequest.from_response(response, formdata = {'pl': 'off'})
FormRequest.from_response(response, formdata = {'pl': '')
默认情况下,该网页提供了包含已选中的复选框的形式。目标是提交表单和'关闭'一些复选框,只有两个选项:'开'/'关'
是不是一个复选框发送''字符串''或'字符串'关''? – 2012-07-10 14:00:47
@Sjaak Trekhaak:这就是我的想法,但FormRequest.from_response一直抛出一个错误。 – user1460015 2012-07-10 19:44:18