我正在从URL中具有ID的API提取数据,并从文件中遍历一组ID。我正在将标头和有效负载传递给服务器
www.example.com/<id>
但是请求模块不允许我将ID添加到使响应404的URL中。有人可以帮助您如何在for循环中迭代多个URL吗?
我尝试了字符串连接和格式样式,但没有帮助。
with open('alerts_id') as ids:
for id in ids:
url = "www.example.com/{}".format(id)
print(url)
headers = {
'content-type': "application/json",
'prefer': "status 200",
'Authorization': "Basic xxxxxx"
}
payload = ""
response = requests.get(url ,data=payload, headers=headers, verify=False)
print(response.text)
我期望API的输出,但是找不到。但是当我手动传递ID时。有效
输出:
www.example.com/24568
未找到
答案 0 :(得分:0)
根据您打印的URL,您的程序似乎正常工作。该URL www.example.com/24568
实际上是404 Not Found
。击中该URL后所看到的页面将在服务器中配置为在404出现的情况下显示。
验证1 :curl命令
C:\Users\kamal>curl -Iks www.example.com/24568
HTTP/1.1 404 Not Found
Accept-Ranges: bytes
Cache-Control: max-age=604800
Content-Type: text/html; charset=UTF-8
Date: Mon, 03 Jun 2019 15:57:12 GMT
Expires: Mon, 10 Jun 2019 15:57:12 GMT
Last-Modified: Mon, 03 Jun 2019 06:56:08 GMT
Server: ECS (oxr/8313)
Vary: Accept-Encoding
X-Cache: 404-HIT
Content-Length: 1270
验证2 :浏览器的“网络”标签(右键>>检查元素>>网络)