如果我運行這個 Python 代碼,我的程式就會掛斷。(我沒有收到任何錯誤。)
import requests
url = "https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/generative/dcgan.ipynb"
r = requests.get(url)
但這正如預期的那樣作業得很好。
import requests
url = "https://stackoverflow.com"
r = requests.get(url)
curl用于獲取 github 檔案也可以正常作業。
curl https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/generative/dcgan.ipynb
那么你能重現我的問題嗎,我是否過度鎖定了一些瑣碎的事情,或者只是我的 python 環境中的一些事情?
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: [email protected]
License: Apache 2.0
Location: /usr/lib/python3/dist-packages
Requires:
Required-by:
uj5u.com熱心網友回復:
您可能會陷入重定向。你可以通過設定來克服這個問題allow_redirects=False。以下代碼適用于我:
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())
uj5u.com熱心網友回復:
它非常適合我。如果它“掛起”,連接不良可能會導致它。你可以做的是提供一個timeout引數,它會等待那么多秒,如果它沒有收到來自服務器的回應,它將繼續執行代碼。
import requests
url = "https://stackoverflow.com"
r = requests.get(url, timeout=2)
uj5u.com熱心網友回復:
這個對我有用。但是,如果您仍然有問題requests,您甚至可以使用urllib.request
例如:
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)
它們具有相同的輸出:
<Response [200]>
200
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/481568.html
