Gspread,PythonAnywhere:“;OSError:[Errno 101]无法访问网络";-正在尝试连接到Google工作表

Gspread,PythonAnywhere:“;OSError:[Errno 101]无法访问网络";-正在尝试连接到Google工作表,python,google-sheets-api,pythonanywhere,gspread,Python,Google Sheets Api,Pythonanywhere,Gspread,范围=['https://spreadsheets.google.com/feeds'] creds=ServiceAccountCredentials.from_json_keyfile_name('NFL Redraft-e021dc0d5969.json',范围) client=gspread.authorize(creds) 此代码在我的本地计算机上运行良好,但在Pythonywhere上出现故障,其中OSError:[Errno 101]无法访问网络 你知道怎么解决吗?我试着运行它1


范围=['https://spreadsheets.google.com/feeds']
creds=ServiceAccountCredentials.from_json_keyfile_name('NFL Redraft-e021dc0d5969.json',范围)
client=gspread.authorize(creds)

此代码在我的本地计算机上运行良好,但在Pythonywhere上出现故障,其中
OSError:[Errno 101]无法访问网络

你知道怎么解决吗?我试着运行它10次,其中有1次成功了。我试过console和ipython。Gspread和Praw是最新的

OSError回溯(最近一次调用)
在()
1303名球员,选秀任务,有序选秀,位置=初始化选秀()
1304拾取字符串,取整,拾取=拾取下一个()
->1305 x,x,x,评论,消息=authenticate_google()
1306注释\u回复\u至=从\u表(注释)恢复\u
1307消息\u已处理=从\u工作表(消息)还原\u
在google()中
39范围=['https://spreadsheets.google.com/feeds']
40 creds=ServiceAccountCredentials.from_json_keyfile_name('NFL Redraft-e021dc0d5969.json',范围)
--->41客户端=gspread.authorize(creds)
42
43 sht=客户端打开(“重新起草测试”)
/授权(凭证)中的home/jj2807/.local/lib/python3.5/site-packages/gspread/client.py
400     """
401客户端=客户端(身份验证=凭据)
-->402 client.login()
403返回客户端
/登录时的home/jj2807/.local/lib/python3.5/site-packages/gspread/client.py(self)
59
60 http=httplib2.http()
--->61自我验证刷新(http)
62
63 self.session.add_头('Authorization',“Bearer”+self.auth.access_令牌)
/刷新中的usr/local/lib/python3.5/dist-packages/oauth2client/client.py(self,http)
558请求。
559         """
-->560自我刷新(http.request)
561
562 def revoke(自我,http):
/usr/local/lib/python3.5/dist-packages/oauth2client/client.py in_刷新(self,http_请求)
763         """
764如果不是自助商店:
-->765自我更新请求(http请求)
766其他:
767 self.store.acquire_lock()
/usr/local/lib/python3.5/dist-packages/oauth2client/client.py in\u do\u refresh\u请求(self,http\u请求)
795 logger.info('刷新访问令牌')
796 resp,content=http\u请求(
-->797 self.token_uri,method='POST',body=body,headers=headers)
798 content=\u helpers.\u from\u字节(content)
799如果resp.status==http_client.OK:
/请求中的usr/local/lib/python3.5/dist-packages/httplib2/_-init__u;.py(self、uri、方法、主体、头、重定向、连接类型)
1312内容=b“”
1313其他:
->1314(响应、内容)=自请求(连接、权限、uri、请求uri、方法、正文、标题、重定向、缓存键)
1315例外情况除外,如e:
1316如果self.force\u异常\u到\u状态\u代码:
/usr/local/lib/python3.5/dist-packages/httplib2/_-init___;.py-in请求(self、conn、host、绝对uri、请求uri、方法、主体、头、重定向、缓存键)
1062身份验证请求(方法、请求uri、头、正文)
1063
->1064(响应,内容)=自我。conn\u请求(conn,request_UURI,method,body,Header)
1065
1066如果认证:
/usr/local/lib/python3.5/dist-packages/httplib2/__-init___;.py-in_-conn_请求(self、conn、请求uri、方法、正文、头)
985尝试:
986如果conn.sock为无:
-->987连接件()
988 conn.request(方法、请求uri、正文、标题)
989套接字除外。超时:
/connect(self)中的usr/lib/python3.5/http/client.py
1250“连接到给定(SSL)端口上的主机。”
1251
->1252 super().connect()
1253
1254如果是自通道主机:
/connect(self)中的usr/lib/python3.5/http/client.py
847“连接到\uuu init\uuuu中指定的主机和端口。”
848 self.sock=self.\u创建\u连接(
-->849(self.host、self.port)、self.timeout、self.source\u地址)
850 self.sock.setsockopt(socket.IPPROTO_TCP,socket.TCP_NODELAY,1)
851
/创建连接(地址、超时、源地址)中的usr/lib/python3.5/socket.py
709
710如果err不是无:
-->711上升误差
712其他:
713 raise错误(“getaddrinfo返回空列表”)
/创建连接(地址、超时、源地址)中的usr/lib/python3.5/socket.py
700如果源地址:
701套接字绑定(源地址)
-->702插座连接(sa)
703回程短袜

704
您使用的是预先安装在Pythonywhere上的较旧版本的gspread,它无法识别代理设置,因此无法连接。请尝试使用较新版本的gspread。

您使用的是预先安装在Pythonywhere上的较旧版本的gspread,它无法识别代理设置,因此您可以无法连接。请尝试使用较新版本的gspread。

不幸的是,您可能必须升级到付费帐户才能解决此问题。Python Anywhere的工作人员表示,免费帐户通过代理以将其限制在API白名单中。gspread显然会尝试通过代理一次,并绕过next.这是另一个线程上的工作人员提供的:

“即使使用相同的代码,也会发生这种情况——也就是说,完全相同的代码可能在某一天起作用,而在第二天就不起作用了。不幸的是,我们知道的唯一解决办法是切换到付费帐户。”


不幸的是,您可能必须升级到付费帐户才能解决此问题