Python post 请求未响应
Python post request not responding
我有一个 Python GUI,它通过设备网页发送 POST 与一些实验室设备进行交互。我使用 chrome 开发人员工具来找出为每个功能发送哪些信息,这种方法适用于除网页上的一个按钮之外的所有内容。
相关output from developer tools is here
所以我将此代码作为 post 请求发送
Post_data={'SUBMIT_FLOW' :'Zero Flow',
'PRES_VAL' :''}
Encoded_data=urllib.urlencode(Post_data)
Request = urllib2.Request(url+'/configure_html_zero', Encoded_data)
每次我执行此策略时,设备都会 运行 我想要的功能,但对于此功能它不起作用。如果我解压缩对该请求的响应,我会得到
<addinfourl at 205604872L whose fp = <socket._fileobject object at 0x000000000EE8F408>>
这里是HTML这个函数对应的代码段
<td class="main_table_data">
<table ID="Zero" class="inner_table" cellspacing="0" width="100%">
<form name="config_zero" method="post" action="configure_html_zero">
<tr>
<td><input type="submit" value="Zero Flow" name="SUBMIT_FLOW" ID="ZeroFlow"></td>
</tr>
<tr>
<td> </td>
</tr> <!-- End Labels -->
<tr>
<td><input type="submit" value="Zero Pressure" name="SUBMIT_PRES" ID="ZeroPressure"><input type="text" name="PRES_VAL" size="10"></td>
</tr>
</form>
</table>
</td>
我完全不知道 HTML 所以我不知道这是否有价值。
而且,如果有任何兴趣,这里是 what the form looks like on the website
我没有将数据发送到错误的地方 URL,而且我在我的程序中使用了与其他十几次相同的过程。知道为什么这个不同吗?这和"PRES_VAL"的空白值有关系吗?
resp.read()
和 resp.getcode()
应该包含您遇到的任何潜在问题的描述。 resp.getcode()
是不是 2xx?您应该检查 https://en.wikipedia.org/wiki/List_of_HTTP_status_codes 。如果 resp.read()
很长那么它可能有一个 HTML 页面的内容,你可以将内容保存在一个 HTML 文件中并用浏览器查看它是否包含任何指示问题(验证错误)。如果没有实际的设备和整个 req/response 信息,除了提供调试提示外,没有人可以帮助您。
我有一个 Python GUI,它通过设备网页发送 POST 与一些实验室设备进行交互。我使用 chrome 开发人员工具来找出为每个功能发送哪些信息,这种方法适用于除网页上的一个按钮之外的所有内容。
相关output from developer tools is here
所以我将此代码作为 post 请求发送
Post_data={'SUBMIT_FLOW' :'Zero Flow',
'PRES_VAL' :''}
Encoded_data=urllib.urlencode(Post_data)
Request = urllib2.Request(url+'/configure_html_zero', Encoded_data)
每次我执行此策略时,设备都会 运行 我想要的功能,但对于此功能它不起作用。如果我解压缩对该请求的响应,我会得到
<addinfourl at 205604872L whose fp = <socket._fileobject object at 0x000000000EE8F408>>
这里是HTML这个函数对应的代码段
<td class="main_table_data">
<table ID="Zero" class="inner_table" cellspacing="0" width="100%">
<form name="config_zero" method="post" action="configure_html_zero">
<tr>
<td><input type="submit" value="Zero Flow" name="SUBMIT_FLOW" ID="ZeroFlow"></td>
</tr>
<tr>
<td> </td>
</tr> <!-- End Labels -->
<tr>
<td><input type="submit" value="Zero Pressure" name="SUBMIT_PRES" ID="ZeroPressure"><input type="text" name="PRES_VAL" size="10"></td>
</tr>
</form>
</table>
</td>
我完全不知道 HTML 所以我不知道这是否有价值。
而且,如果有任何兴趣,这里是 what the form looks like on the website
我没有将数据发送到错误的地方 URL,而且我在我的程序中使用了与其他十几次相同的过程。知道为什么这个不同吗?这和"PRES_VAL"的空白值有关系吗?
resp.read()
和 resp.getcode()
应该包含您遇到的任何潜在问题的描述。 resp.getcode()
是不是 2xx?您应该检查 https://en.wikipedia.org/wiki/List_of_HTTP_status_codes 。如果 resp.read()
很长那么它可能有一个 HTML 页面的内容,你可以将内容保存在一个 HTML 文件中并用浏览器查看它是否包含任何指示问题(验证错误)。如果没有实际的设备和整个 req/response 信息,除了提供调试提示外,没有人可以帮助您。