主要还是网络问题,服务器被墙了,A城市的移动网络正常,在B城市是移动网络就出现此错误。
解决方案如下:
进入 UserAgent 源代码,在import加载项可以找到setting,再次进入到setting.py,里面包含了 fake-useragent 在线获取 useragent 的逻辑。
其中可以看到如下代码
CACHE_SERVER = 'https://fake-useragent.herokuapp.com/browsers/{version}'
注意:{version}改成你的fake-useragent模块的版本(下同) 。我这里是0.1.11。
在浏览器中打开这个修正后的链接。
出现的是一个json文件信息,出报错的情况下,基本上你是打不开这个链接的,要不然也不会出现报错了。这个时候你需要一架梯子。
将json中的代码全部复制,另存为 fake_useragent_{version}.json ,例如我的是fake_useragent_0.1.11.json,然后把这个文件放入电脑的缓存文件夹中(像我的:C:\Users\LayJeme\AppData\Local\Temp)
不清楚自己电脑缓存文件夹路径的话,如下操作。
import tempfile
print(tempfile.gettempdir())