首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么这个请求不能使用这个url?

为什么这个请求不能使用这个url?
EN

Stack Overflow用户
提问于 2022-05-24 17:14:51
回答 3查看 466关注 0票数 -1

如果我运行这个Python代码,我的程序就会挂断。(我没有发现任何错误。)

代码语言:javascript
复制
import requests
url = "https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/generative/dcgan.ipynb"
r = requests.get(url)

但它的运作与预期完全一样。

代码语言:javascript
复制
import requests
url = "https://stackoverflow.com" 
r = requests.get(url)

使用curl获取github文件也很好。

代码语言:javascript
复制
curl https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/generative/dcgan.ipynb

那么,你能重现我的问题吗?我是锁定了一些琐碎的东西,还是仅仅是因为我的python环境?

代码语言:javascript
复制
python3 --version
Python 3.8.10

pip show requests
Name: requests
Version: 2.22.0
Summary: Python HTTP for Humans.
Home-page: http://python-requests.org
Author: Kenneth Reitz
Author-email: me@kennethreitz.org
License: Apache 2.0
Location: /usr/lib/python3/dist-packages
Requires:
Required-by:
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-05-24 17:34:08

你可能会陷入重定向。您可以通过设置allow_redirects=False来克服这一问题。以下代码适用于我:

代码语言:javascript
复制
import requests
url = "https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/generative/dcgan.ipynb"

try: 
    r = requests.get(url, allow_redirects=False, timeout=10)
except requests.exceptions.Timeout as err: 
    print(err)

print(r.json())
票数 1
EN

Stack Overflow用户

发布于 2022-05-24 17:20:10

对我来说是完美的。如果它“挂起”,一个糟糕的连接会导致它。您可以做的是提供一个timeout参数,它将等待那么多秒,如果它没有接收到来自服务器的响应,它将继续执行代码。

代码语言:javascript
复制
import requests
url = "https://stackoverflow.com" 
r = requests.get(url, timeout=2)
票数 1
EN

Stack Overflow用户

发布于 2022-05-24 17:26:44

对我来说很管用。但是,如果requests仍然存在问题,甚至可以使用urllib.request

例如:

代码语言:javascript
复制
import urllib.request
import requests

url = "https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/generative/dcgan.ipynb"

r = requests.get(url)
print(r)
u = urllib.request.urlopen(url).getcode()
print(u)

它们的产出是相同的:

代码语言:javascript
复制
<Response [200]>
200
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72366930

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档