我正在尝试使用 python 请求为网络抓取创建 POST 数据

I am trying to create POST data for web scraping using python requests

我的表单输入如下:

<PRE>
<FORM>
<INPUT name="field_RecordingDateID-StartDate" id="field_RecordingDateID-StartDate" placeholder="mm/dd/yyyy" type="date" value="">
<INPUT name="field_RecordingDateID-EndDate" id="field_RecordingDateID-EndDate" placeholder="mm/dd/yyyy" type="date" value="">
<input type="submit" value="search">
</FORM>
</PRE>

我正在尝试将字典创建为

payload = dict(field_RecordingDateID-StartDate = "10-08-2016",
   field_RecordingDateID-EndDate ="12-08-2016")

并且我需要发送 post 请求,以便我可以通过 Python 请求获得结果。 我正在使用

r = requests.get(url,data=payload)

目前我在控制台中收到错误消息“无法将值分配给操作员”。 错误是在创建字典。 你能帮帮我吗?

您应该使用有效的标识符。尝试将有效负载字典创建为:

StartDate = 'field_RecordingDateID-StartDate'
EndDate = 'field_RecordingDateID-EndDate'
payload = dict(StartDate = '10-08-2016', EndDate = '12-08-2016')

和post您的数据为:

r = requests.post(url,data=payload)

这是你代码中的一个小问题。实际上定义字典的正确方法是这样的。

payload = {"field_RecordingDateID-StartDate" :"10-08-2016",
                                "field_RecordingDateID-EndDate" :"12-08-2016"}