我收到此错误
AttributeError:模块'requests'没有属性'open'
当尝试运行以下脚本时:
import requests
headers = {
'Content-Type': 'application/json',
}
params = (
('key', 'mykeyhere'),
)
data = open('request.json')
response = requests.post('https://www.googleapis.com/qpxExpress/v1/trips/search', headers=headers, params=params, data=data)
我想念什么吗?
答案 0 :(得分:0)
内置的Python函数open
返回文件对象,而requests.post中的data
参数需要字典,或者至少是文件对象以外的东西。端点将期望使用JSON编码的对象,但我认为您在发送文本时看到的错误不会显示为Python AttributeError。
您可以尝试使用data=data.read()
之类的方法,看看是否可以解决您的问题。
...但是这与您提到的错误无关,因此我可能缺少一些信息。
答案 1 :(得分:0)
我收到错误消息是因为我将文件命名为request.py。更改文件名后,没有更多错误。
答案 2 :(得分:-1)
import requests
import json
headers = {
'Content-Type': 'application/json',
}
params = (
('key', 'mykeyhere'),
)
with open('request.json') as file:
data = json.load(file) # Now you have proper json instead of an io object
response = requests.post('https://www.googleapis.com/qpxExpress/v1/trips/search', headers=headers, params=params, data=data)