大佬们,有啥解决办法吗,curl可以重复请求
curl
curl --location --request GET 'https://www.demo.com/0737/' \
--header 'User-Agent: Apifox/1.0.0 (https://apifox.com)' \
--header 'Accept: */*' \
--header 'Host: www.demo.com' \
--header 'Connection: keep-alive'
python
import requests
url = "https://www.demo.com/0737/"
payload={}
headers = {
'User-Agent': 'Apifox/1.0.0 (https://apifox.com)',
'Accept': '*/*',
'Host': 'www.demo.com',
'Connection': 'keep-alive'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
4 Likes
Ghidra
()
3
不发代码怎么帮你看。显然就是你python代码里有格式错误呗
跨域、cf 都有可能,前两天处理佬友分享的 api 就遇到这个问题了
1 Like
ohayo
(GB2312)
9
import requests
headers = {
‘User-Agent’: ‘Apifox/1.0.0 (https://apifox.com)’,
‘Accept’: ‘/’,
‘Host’: ‘www.demo.com’,
‘Connection’: ‘keep-alive’,
}
response = requests.get(‘https://www.demo.com/0737/’, headers=headers)
zhx47
10
换成curl_cffi,指定个浏览器指纹试试看行不行
2 Likes
Ghidra
()
11
嗯。py的有报错吗?要不报错也发一下。我想得到的原因有:
- curl默认是会跟着3开头的重定向的,py不会
- 默认情况下py是会校验https证书的,curl不知道,可能不会吧
- py用的http版本可能比较高,强制用http/1.1试试
- 可能网站封锁了python的tls指纹,但没封curl(这是有可能的,举个例子:它cf里拦截了所有机器流量,但是开发/测试自己需要调试,所以给curl开了白名单)
哦是变成403不是访问不了啊,dbq刚刚没看到。那就可能是最后一种情况了。先把前面的排除一下吧
感谢佬,换成curl_cffi,指定个浏览器指纹就可以