在python3上支持vncdotool?

2024-09-29 23:29:08 发布

您现在位置:Python中文网/ 问答频道 /正文

从Python到vnc的最佳选择是vncdotool模块。我一直在用它来对付Python,没有任何问题。现在我正朝着Python3号前进。在我的Mac电脑上似乎根本不起作用。问题就在这里。在

在创建venv并安装pip3之后,安装vncdotool。我在运行vncdo命令时立即出错。上面写着“打印数据”。看起来它运行的是Python2代码“print'xxx'vs print('xxx')”

(vnc) mac:vnc user$ vncdo
Traceback (most recent call last):
  File "/Users/user/Documents/code/vnc/bin/vncdo", line 11, in <module>
    load_entry_point('vncdotool==0.10.0', 'console_scripts', 'vncdo')()
  File "/Users/user/Documents/code/vnc/lib/python3.6/site-packages/pkg_resources/__init__.py", line 565, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/Users/user/Documents/code/vnc/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2631, in load_entry_point
    return ep.load()
  File "/Users/user/Documents/code/vnc/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2291, in load
    return self.resolve()
  File "/Users/user/Documents/code/vnc/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2297, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/Users/user/Documents/code/vnc/lib/python3.6/site-packages/vncdotool/command.py", line 79
    print data
             ^
SyntaxError: Missing parentheses in call to 'print'
(vnc) Mac:vnc user$

当我以交互模式运行python3并尝试导入api模块时。我收到另一个错误,说队列不可用。在

^{pr2}$

我检查了github page,发现确实有python3支持。然而,在互联网上并没有太多的信息。在

setup.py    added python 3  8 months ago

Tags: inpylibpackageslinesitecodeload
1条回答
网友
1楼 · 发布于 2024-09-29 23:29:08

正如您所拥有的,该模块不支持Python3—stacktrace中的代码显然只支持py2。开发人员在setup.py的元数据中添加了“python3”这一事实并不意味着支持已经完成,尤其是考虑到上一个版本(在本文撰写之时)是更早的in Mar 2016。在

您可以安装该模块的gitHEAD版本,并查看其支持是否有效。至少,^{}中的print语句被修复了。在

pip install git+https://github.com/sibson/vncdotool.git

建议的重复项Python 2 and Python 3 dual development建议如何修复代码,使其同时在Python2和3中运行。如果支持不完整,您可以将其余的修复作为请求请求提供给维护人员。在

相关问题 更多 >

    热门问题