我跟随
Google's Quickstart for Python
,一步一步。我严格按照每一步做,经常复印和粘贴。我肯定启用了google日历api。我已经用pip安装了google客户端库。我已经在它自己的文件夹中设置了示例代码和credentials.json。所以,为什么运行时会出现此错误:
"OSError: [WinError 10013] An attempt was made to access a socket in a way forbidden by its access permissions"
为了解决这个问题,我
learned what a socket is
. (它实际上是一个IP地址和一个端口的组合)。我已经
learned how to use netstat
,尽管我还不知道这对我的工作有什么影响。我已经研究过使用
ShellExecuteEx
基于中的答案
this question
,但我不知道如何在python中使用它。
我试着把剧本从接受的答案添加到
this question
(它实际上使用了shellexecuteex方法,但我没有注意到这一点)导入一个admin.py文件,并将这个admin.py脚本导入quickstart.py。在将admin.py脚本更新为python 3语法并运行quickstart.py之后,windows 8.1询问我是否允许访问。我说是的,但它仍然给我一个以禁止的方式访问套接字的错误(winerror 10013)。UAC不是问题所在。
我怀疑这是端口冲突,有些东西已经在使用google试图使用的脚本所使用的端口。但我担心端口是由一个无法更改的黑盒函数决定的。错误本身并没有说明它使用的是哪个端口,所以我需要做更多的研究。