前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[820]fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached

[820]fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached

作者头像
周小董
发布2020-06-01 16:51:26
2.2K0
发布2020-06-01 16:51:26
举报
文章被收录于专栏:python前行者

报错信息

代码语言:javascript
复制
Error occurred during loading data. Trying to use cache server https://fake-useragent.herokuapp.com/browsers/0.1.11
Traceback (most recent call last):
  File "/usr/local/python3/lib/python3.6/urllib/request.py", line 1318, in do_open
    encode_chunked=req.has_header('Transfer-encoding'))
  File "/usr/local/python3/lib/python3.6/http/client.py", line 1239, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/local/python3/lib/python3.6/http/client.py", line 1285, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/local/python3/lib/python3.6/http/client.py", line 1234, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/python3/lib/python3.6/http/client.py", line 1026, in _send_output
    self.send(msg)
  File "/usr/local/python3/lib/python3.6/http/client.py", line 964, in send
    self.connect()
  File "/usr/local/python3/lib/python3.6/http/client.py", line 1392, in connect
    super().connect()
  File "/usr/local/python3/lib/python3.6/http/client.py", line 936, in connect
    (self.host,self.port), self.timeout, self.source_address)
  File "/usr/local/python3/lib/python3.6/socket.py", line 724, in create_connection
    raise err
  File "/usr/local/python3/lib/python3.6/socket.py", line 713, in create_connection
    sock.connect(sa)
socket.timeout: timed out
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "/usr/local/python3/lib/python3.6/site-packages/fake_useragent/utils.py", line 67, in get
    context=context,
  File "/usr/local/python3/lib/python3.6/urllib/request.py", line 223, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/python3/lib/python3.6/urllib/request.py", line 526, in open
    response = self._open(req, data)
  File "/usr/local/python3/lib/python3.6/urllib/request.py", line 544, in _open
    '_open', req)
  File "/usr/local/python3/lib/python3.6/urllib/request.py", line 504, in _call_chain
    result = func(*args)
  File "/usr/local/python3/lib/python3.6/urllib/request.py", line 1361, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/local/python3/lib/python3.6/urllib/request.py", line 1320, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error timed out>
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "/usr/local/python3/lib/python3.6/site-packages/fake_useragent/utils.py", line 154, in load
    for item in get_browsers(verify_ssl=verify_ssl):
  File "/usr/local/python3/lib/python3.6/site-packages/fake_useragent/utils.py", line 97, in get_browsers
    html = get(settings.BROWSERS_STATS_PAGE, verify_ssl=verify_ssl)
  File "/usr/local/python3/lib/python3.6/site-packages/fake_useragent/utils.py", line 84, in get
    raise FakeUserAgentError('Maximum amount of retries reached')
fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached

解决方法1

fake_useragent中存储的UserAgent列表发生了变动,而本地UserAgent的列表未更新所导致的,在更新fake_useragent后报错就消失了。

代码语言:javascript
复制
pip install -U fake-useragent

解决方法2

可能是缓存fake_useragent_0.1.11.json的问题(最新的版本),但是这个json文件我无法用wget方法或者浏览器下载下来,

只需要将这个缓存文件放在windows或者linux的缓存目录下:

1.获取临时目录:(linux和windows都适用)

代码语言:javascript
复制
#windows
 
import tempfile
 
a = tempfile.gettempdir()
print(a)
 
C:\Users\SHAOOP~1\AppData\Local\Temp
[Finished in 0.2s]
 
#linux
 
[root@hwcentos ~]# python
Python 3.6.5 (default, Mar 20 2019, 21:55:20) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-18)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tempfile
>>> tempfile.gettempdir()
'/tmp'

2.将 fake_useragent_0.1.11.json 放入上述linux 或者 windows的临时目录(这里我将自己成功运行的json文件提供链接:https://pan.baidu.com/s/1_Qv1LGBSjO2bnF4ocMqhwQ 提取码: 2hpu )


fake_useragent 具体github地址:https://github.com/hellysmile/fake-useragent

下载最新版本json文件(网页拉到最底保存为json文件(fake_useragent.json))

https://fake-useragent.herokuapp.com/browsers/0.1.11   

地址中最新版本号由(https://github.com/hellysmile/fake-useragent/blob/master/fake_useragent/settings.py)地址确定

参考:https://www.isfirst.net/python/fake-useragent-errors https://blog.csdn.net/shaooping/article/details/90296667 https://blog.csdn.net/u010865811/article/details/90487379

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/05/28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 解决方法1
  • 解决方法2
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档