20

OS: Windows 7; Python GUI シェルを使用した Python 2.7.3

Python で Web サイトを読み込もうとしていますが、何人かの作成者がurlliburllib2ライブラリを使用しています。サイトを変数に格納するために、同様のアプローチが提案されているのを見てきました。

import urllib
import urllib2
g = "http://www.google.com/"
read = urllib2.urlopen(g)

最後の行は、120 秒以上経過した後にエラーを生成します。

> Traceback (most recent call last):   File "<pyshell#27>", line 1, in
> <module>
>     r = urllib2.urlopen(o)   File "C:\Python27\lib\urllib2.py", line 126, in urlopen
>     return _opener.open(url, data, timeout)   File "C:\Python27\lib\urllib2.py", line 400, in open
>     response = self._open(req, data)   File "C:\Python27\lib\urllib2.py", line 418, in _open
>     '_open', req)   File "C:\Python27\lib\urllib2.py", line 378, in _call_chain
>     result = func(*args)   File "C:\Python27\lib\urllib2.py", line 1207, in http_open
>     return self.do_open(httplib.HTTPConnection, req)   File "C:\Python27\lib\urllib2.py", line 1177, in do_open
>     raise URLError(err) URLError: <urlopen error [Errno 10060] A connection attempt failed because the connected party did not properly
> respond after a period of time, or established connection failed
> because connected host has failed to respond>

g変数をバイパスしようとしurlopen("http://www.google.com/")ましたが、どちらも成功しませんでした(同じ時間の後に同じエラーが生成されます)。


def fibonacci(n):
  if n <= 1:
    return n
  else:
    return fibonacci(n-1) + fibonacci(n-2)

print(fibonacci(int(input())))

nそして、あなたはth 番号まで印刷したいので:

[print(fibonacci(n)) for n in range (int(input()))]

そして python2.7 の場合は に変更inputraw_inputます。

4

3 に答える 3

5

答え(基本は事前です!):

エラー: 10060 リクエストにタイムアウト パラメータを追加すると、問題が解決しました。

例 1

import urllib
import urllib2
g = "http://www.google.com/"
read = urllib2.urlopen(g, timeout=20)

例 2

GET リクエストを行っているときにも同様のエラーが発生しました。ここでも、timeoutパラメーターを渡すと 10060 エラーが解決されました。

response = requests.get(param_url, timeout=20)
于 2020-05-29T07:14:14.040 に答える