gyu998 发表于 2023-6-1 11:56:15

post请求返回结果展示问题

import requests
import json
url = 'http://test.test'
data = {
    "deviceID": "",
    "state": "0",
    "orderBeanArray": [{
      "startTime": "20220722171210",
      "userID": "",
      "operationType": "1",
      "continueFlag": "0",
      "endTime": "20500330134308",
      "detailParam": "",
      "productID": ""
    }],
    "userAreaID": "",
    "userID": "",
    "FLOWID": "",
    "detailParam": "",
    "TIMESTAMP": "20210730134317",
    "broadbandID": ""
}

# 设置请求参数
data['deviceID'] = input('请输入mac:')
data['userID'] = input('请输入账号:')
data['productID'] = input('请输入id:')
data['userAreaID'] = input('请输入编码:')
data = json.dumps(data).encode('utf-8')

# 发送POST请求
response = requests.post(url, data=data)

# 输出响应结果
print(response.text)



代码如上,本来是为了方便调用接口丢数据进去,用了pyinstaller打包成exe后,发送post请求后命令提示符窗口就关闭了,没有打印返回结果,求助各位大佬,要如何实现每次请求后在窗口展示返回结果,并且重新开始一次新的请求。

歌者文明清理员 发表于 2023-6-1 11:56:16

你可以在发送POST请求后加上一句 input('按回车键继续...'),让窗口等待用户按下回车键后再退出,这样就可以看到返回结果了。代码如下所示:

import requests
import json

url = 'http://test.test'
data = {
    "deviceID": "",
    "state": "0",
    "orderBeanArray": [{
      "startTime": "20220722171210",
      "userID": "",
      "operationType": "1",
      "continueFlag": "0",
      "endTime": "20500330134308",
      "detailParam": "",
      "productID": ""
    }],
    "userAreaID": "",
    "userID": "",
    "FLOWID": "",
    "detailParam": "",
    "TIMESTAMP": "20210730134317",
    "broadbandID": ""
}

while True:
    # 设置请求参数
    data['deviceID'] = input('请输入mac:')
    data['userID'] = input('请输入账号:')
    data['productID'] = input('请输入id:')
    data['userAreaID'] = input('请输入编码:')
    data = json.dumps(data).encode('utf-8')

    # 发送POST请求
    response = requests.post(url, data=data)

    # 输出响应结果
    print(response.text)

    # 等待用户按下回车键,继续下一次请求
    input('按回车键继续...')
这样,程序会一直等待用户按下回车键,然后再进入下一次请求。如果你想结束程序,可以按 Ctrl+C 强制停止。

如果程序报错,则它可能不会运行到input('按回车键继续...'),可能意外的终止。这种情况需要使用终端,例如 cmd 或 powershell 打开才能查看。

歌者文明清理员 发表于 2023-6-1 12:03:10

歌者文明清理员 发表于 2023-6-1 12:01
你可以在发送POST请求后加上一句 input('按回车键继续...'),让窗口等待用户按下回车键后再退出,这样就可 ...

如果你在 PyCharm 中运行程序,则你可能需要按 Ctrl+F2 而不是 Ctrl+C 来终止程序。

gyu998 发表于 2023-6-1 12:03:52

歌者文明清理员 发表于 2023-6-1 11:56
你可以在发送POST请求后加上一句 input('按回车键继续...'),让窗口等待用户按下回车键后再退出,这样就可 ...

感谢大佬

thirdsix1 发表于 2023-6-1 18:34:43


学习了
页: [1]
查看完整版本: post请求返回结果展示问题