我想使用python-requests触发单选按钮。
当前,我正在查看手动选择单选按钮时发生的情况:
XHR到:http://exmp-url/admin-ajax.php
标题:
'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'pl-PL,pl;q=0.9,en-US;q=0.8,en;q=0.7,de;q=0.6',
'Connection': 'keep-alive',
'Content-Length': '110',
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'X-Requested-With': 'XMLHttpRequest'
有效载荷:
'operacja': 'ShowRezerwacjeTable',
'action': 'ShowRezerwacjeTable',
'data': '2019-03-19',
'obiekt_typ': 'badminton',
'godz_od': '',
'godz_do': ''
我试图模仿并发送具有相同有效负载和标头的数据:
with Session() as c:
c.post(login_page, data=payload)
# Getting page content after logging in.
response = c.get(reservation_page)
content = response.content
c.headers.update(headers)
resp = c.post('http://http://exmp-url/admin-ajax.php', data=payload2)
# Getting new content that should have altered HTML after radio button is checked.
new_content = codecs.decode(resp.content, encoding="utf-8-sig")
响应的状态码为200,而内容为b'\ xef \ xbb \ xbf',解码后为空。
我在做什么错?也许我应该切换方法,而是尝试单击按钮本身。我宁愿不使用硒。 robobrowser是否在没有可见表单元素的情况下进行推荐?
选中单选按钮的HTML:
<input type="radio" id="rez_obiekt_typ_t" name="obiekt_typ" data-obiekt_typ="tenis" checked="" value="tenis" class="ui-helper-hidden-accessible">