Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x Python请求模块错误-无法加载任何url:';远程端关闭连接,无响应';_Python 3.x_Python Requests_Anaconda - Fatal编程技术网

Python 3.x Python请求模块错误-无法加载任何url:';远程端关闭连接,无响应';

Python 3.x Python请求模块错误-无法加载任何url:';远程端关闭连接,无响应';,python-3.x,python-requests,anaconda,Python 3.x,Python Requests,Anaconda,我正在尝试使用Python3.5从url获取数据,使用以下代码 import requests url ='http://eutils.ncbi.nlm.nih.gov/entrez/eutils/einfo.fcgi' r = requests.get(url) r.content 可以在浏览器中毫无问题地打开url 但是,我得到一个错误(对于此URL和我尝试的任何其他URL),如下所示: ---------------------------------------------------

我正在尝试使用Python3.5从url获取数据,使用以下代码

import requests
url ='http://eutils.ncbi.nlm.nih.gov/entrez/eutils/einfo.fcgi'
r = requests.get(url)
r.content
可以在浏览器中毫无问题地打开url

但是,我得到一个错误(对于此URL和我尝试的任何其他URL),如下所示:

-------------------------------------------------------------------------- 
TypeError                                 Traceback (most recent call last)
C:\Anaconda3\lib\site-packages\requests\packages\urllib3\connectionpool.py in _make_request(self, conn, method, url, timeout, **httplib_request_kw)
     375             try:  # Python 2.7, use buffering of HTTP responses
 --> 376                 httplib_response = conn.getresponse(buffering=True)
     377             except TypeError:  # Python 2.6 and older

 TypeError: getresponse() got an unexpected keyword argument 'buffering'

 During handling of the above exception, another exception occurred:

 RemoteDisconnected                        Traceback (most recent call last)
 C:\Anaconda3\lib\site-packages\requests\packages\urllib3\connectionpool.py
 in urlopen(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, **response_kw)
     558                                                  timeout=timeout_obj,
 --> 559                                                   body=body, headers=headers)
     560 

 C:\Anaconda3\lib\site-packages\requests\packages\urllib3\connectionpool.py
 in _make_request(self, conn, method, url, timeout,
 **httplib_request_kw)
     377             except TypeError:  # Python 2.6 and older
 --> 378                 httplib_response = conn.getresponse()
     379         except (SocketTimeout, BaseSSLError, SocketError) as e:

 C:\Anaconda3\lib\http\client.py in getresponse(self)    1173          
 try:
 -> 1174                 response.begin()    1175             except ConnectionError:

 C:\Anaconda3\lib\http\client.py in begin(self)
     281         while True:
 --> 282             version, status, reason = self._read_status()
     283             if status != CONTINUE:
> 
> C:\Anaconda3\lib\http\client.py in _read_status(self)
>     250             # sending a valid response.
> --> 251             raise RemoteDisconnected("Remote end closed connection without"
>     252                                      " response")
> 
> RemoteDisconnected: Remote end closed connection without response
> 
> During handling of the above exception, another exception occurred:
> 
> ProtocolError                             Traceback (most recent call
> last) C:\Anaconda3\lib\site-packages\requests\adapters.py in
> send(self, request, stream, timeout, verify, cert, proxies)
>     369                     retries=self.max_retries,
> --> 370                     timeout=timeout
>     371                 )
> 
> C:\Anaconda3\lib\site-packages\requests\packages\urllib3\connectionpool.py
> in urlopen(self, method, url, body, headers, retries, redirect,
> assert_same_host, timeout, pool_timeout, release_conn, **response_kw)
>     608             retries = retries.increment(method, url, error=e, _pool=self,
> --> 609                                         _stacktrace=sys.exc_info()[2])
>     610             retries.sleep()
> 
> C:\Anaconda3\lib\site-packages\requests\packages\urllib3\util\retry.py
> in increment(self, method, url, response, error, _pool, _stacktrace)
>     244             if read is False:
> --> 245                 raise six.reraise(type(error), error, _stacktrace)
>     246             elif read is not None:
> 
> C:\Anaconda3\lib\site-packages\requests\packages\urllib3\packages\six.py
> in reraise(tp, value, tb)
>     308         if value.__traceback__ is not tb:
> --> 309             raise value.with_traceback(tb)
>     310         raise value
> 
> C:\Anaconda3\lib\site-packages\requests\packages\urllib3\connectionpool.py
> in urlopen(self, method, url, body, headers, retries, redirect,
> assert_same_host, timeout, pool_timeout, release_conn, **response_kw)
>     558                                                   timeout=timeout_obj,
> --> 559                                                   body=body, headers=headers)
>     560 
> 
> C:\Anaconda3\lib\site-packages\requests\packages\urllib3\connectionpool.py
> in _make_request(self, conn, method, url, timeout,
> **httplib_request_kw)
>     377             except TypeError:  # Python 2.6 and older
> --> 378                 httplib_response = conn.getresponse()
>     379         except (SocketTimeout, BaseSSLError, SocketError) as e:
> 
> C:\Anaconda3\lib\http\client.py in getresponse(self)    1173          
> try:
> -> 1174                 response.begin()    1175             except ConnectionError:
> 
> C:\Anaconda3\lib\http\client.py in begin(self)
>     281         while True:
> --> 282             version, status, reason = self._read_status()
>     283             if status != CONTINUE:
> 
> C:\Anaconda3\lib\http\client.py in _read_status(self)
>     250             # sending a valid response.
> --> 251             raise RemoteDisconnected("Remote end closed connection without"
>     252                                      " response")
> 
> ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end
> closed connection without response',))
> 
> During handling of the above exception, another exception occurred:
> 
> ConnectionError                           Traceback (most recent call
> last) <ipython-input-16-598f53da7af3> in <module>()
>       3 import requests
>       4 url ='http://eutils.ncbi.nlm.nih.gov/entrez/eutils/einfo.fcgi'
> ----> 5 r = requests.get(url)
>       6 r.content
> 
> C:\Anaconda3\lib\site-packages\requests\api.py in get(url, params,
> **kwargs)
>      67 
>      68     kwargs.setdefault('allow_redirects', True)
> ---> 69     return request('get', url, params=params, **kwargs)
>      70 
>      71 
> 
> C:\Anaconda3\lib\site-packages\requests\api.py in request(method, url,
> **kwargs)
>      48 
>      49     session = sessions.Session()
> ---> 50     response = session.request(method=method, url=url, **kwargs)
>      51     # By explicitly closing the session, we avoid leaving sockets open which
>      52     # can trigger a ResourceWarning in some cases, and look like a memory leak
> 
> C:\Anaconda3\lib\site-packages\requests\sessions.py in request(self,
> method, url, params, data, headers, cookies, files, auth, timeout,
> allow_redirects, proxies, hooks, stream, verify, cert, json)
>     466         }
>     467         send_kwargs.update(settings)
> --> 468         resp = self.send(prep, **send_kwargs)
>     469 
>     470         return resp
> 
> C:\Anaconda3\lib\site-packages\requests\sessions.py in send(self,
> request, **kwargs)
>     574 
>     575         # Send the request
> --> 576         r = adapter.send(request, **kwargs)
>     577 
>     578         # Total elapsed time of the request (approximately)
> 
> C:\Anaconda3\lib\site-packages\requests\adapters.py in send(self,
> request, stream, timeout, verify, cert, proxies)
>     410 
>     411         except (ProtocolError, socket.error) as err:
> --> 412             raise ConnectionError(err, request=request)
>     413 
>     414         except MaxRetryError as e:
> 
> ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote
> end closed connection without response',))
--------------------------------------------------------------
TypeError回溯(最近一次调用上次)
C:\Anaconda3\lib\site packages\requests\packages\urllib3\connectionpool.py在发出请求(self,conn,method,url,timeout,**httplib\u request\u kw)
375尝试:#Python 2.7,使用HTTP响应缓冲
-->376 httplib_response=conn.getresponse(缓冲=True)
377除TypeError外:#Python 2.6及更早版本
TypeError:getresponse()获得意外的关键字参数“buffering”
在处理上述异常期间,发生了另一个异常:
RemoteDisconnected回溯(最近一次呼叫上次)
C:\Anaconda3\lib\site packages\requests\packages\urllib3\connectionpool.py
在urlopen中(self、method、url、body、header、retries、redirect、assert\u same\u host、timeout、pool\u timeout、release\u conn、**response\u kw)
558超时=超时,
-->559正文=正文,标题=标题)
560
C:\Anaconda3\lib\site packages\requests\packages\urllib3\connectionpool.py
输入发出请求(self、conn、方法、url、超时、,
**httplib_请求功率(kw)
377除TypeError外:#Python 2.6及更早版本
-->378 httplib_response=conn.getresponse()
379除了(SocketTimeout、BaseSSLError、SocketError)作为e:
getresponse(self)1173中的C:\Anaconda3\lib\http\client.py
尝试:
->1174响应。开始()1175连接错误除外:
C:\Anaconda3\lib\http\client.py在begin(self)中
281虽然正确:
-->282版本,状态,原因=self.\u读取\u状态()
283如果状态!=继续:
> 
>C:\Anaconda3\lib\http\client.py处于读取状态(self)
>250#发送有效响应。
>-->251升起RemoteDisconnected(“远程端关闭连接,无连接”
>252“答复”)
> 
>RemoteDisconnected:远程端关闭连接,无响应
> 
>在处理上述异常期间,发生了另一个异常:
> 
>协议错误回溯(最近的调用)
>最后)中的C:\Anaconda3\lib\site packages\requests\adapters.py
>发送(自我、请求、流、超时、验证、证书、代理)
>369次重试=自最大重试次数,
>-->370超时=超时
>     371                 )
> 
>C:\Anaconda3\lib\site packages\requests\packages\urllib3\connectionpool.py
>在urlopen中(self、method、url、body、header、retries、redirect、,
>断言\u相同\u主机、超时、池\u超时、释放\u连接、**响应\u kw)
>608 retries=retries.increment(方法、url、错误=e、_pool=self、,
>-->609_stacktrace=sys.exc_info()[2])
>610次重试。sleep()
> 
>C:\Anaconda3\lib\site packages\requests\packages\urllib3\util\retry.py
>增量中(self、方法、url、响应、错误、\u pool、\u stacktrace)
>244如果读取为假:
>-->245升起六个。重新升起(类型(错误),错误,_stacktrace)
>246 elif read不是无:
> 
>C:\Anaconda3\lib\site packages\requests\packages\urllib3\packages\six.py
>重新发布(tp、值、tb)
>308如果值.\uuuu回溯\uuuuu不是tb:
>-->309提升值。带回溯(tb)
>310提高价值
> 
>C:\Anaconda3\lib\site packages\requests\packages\urllib3\connectionpool.py
>在urlopen中(self、method、url、body、header、retries、redirect、,
>断言\u相同\u主机、超时、池\u超时、释放\u连接、**响应\u kw)
>558超时=超时,
>-->559正文=正文,页眉=页眉)
>     560 
> 
>C:\Anaconda3\lib\site packages\requests\packages\urllib3\connectionpool.py
>输入发出请求(self、conn、方法、url、超时、,
>**httplib_请求功率(kw)
>377除TypeError外:#Python 2.6及更早版本
>-->378 httplib_response=conn.getresponse()
>379除了(SocketTimeout、BaseSSLError、SocketError)作为e:
> 
>getresponse(self)1173中的C:\Anaconda3\lib\http\client.py
>尝试:
>->1174响应。开始()1175除ConnectionError外:
> 
>C:\Anaconda3\lib\http\client.py在begin(self)中
>281虽然正确:
>-->282版本,状态,原因=self.\u读取\u状态()
>283如果状态!=继续:
> 
>C:\Anaconda3\lib\http\client.py处于读取状态(self)
>250#发送有效响应。
>-->251升起RemoteDisconnected(“远程端关闭连接,无连接”
>252“答复”)
> 
>协议错误:('Connection aborted',RemoteDisconnected('Remote end')
>关闭连接,无响应',))
> 
>在处理上述异常期间,发生了另一个异常:
> 
>ConnectionError回溯(最近的呼叫
>最后)在()
>3进口请求
>4网址:http://eutils.ncbi.nlm.nih.gov/entrez/eutils/einfo.fcgi'
>--->5R=requests.get(url)
>6 r.内容
> 
>get中的C:\Anaconda3\lib\site packages\requests\api.py(url,参数,
>**kwargs)
>      67 
>68 kwargs.setdefault('allow_redirects',True)
>-->69返回请求('get',url,params=params,**kwargs)
>      70 
>      71 
> 
>请求中的C:\Anaconda3\lib\site packages\requests\api.py(方法、url、,
> **
import requests
MAX_RETRIES = 20
url ='http://eutils.ncbi.nlm.nih.gov/entrez/eutils/einfo.fcgi'

session = requests.Session()
adapter = requests.adapters.HTTPAdapter(max_retries=MAX_RETRIES)
session.mount('https://', adapter)
session.mount('http://', adapter)

r = session.get(url)
print(r.content)
httpretty.enable()

# error might occur here

httpretty.disable()

# out of scope
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
{
  "message": "('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))"
}
r = requests.post(url=url, data=body, headers={'Connection':'close'})
import requests     

r = requests.get(url, allow_redirects=True,headers={
"User-Agent" : "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
})