有没有新的/更新的Twill?

10 投票
4 回答
5285 浏览
提问于 2025-04-18 08:41

我一直在尝试学习用Python编写Twill脚本,目前使用的是Python 3.4和Twill 1.8.0。我在这里看了一些帖子,觉得这个学习过程挺有意思的。不过,我在安装Twill的时候遇到了一些问题。我刚知道PRINT在Python中现在是一个函数,这意味着它需要用括号包起来,而这就是我问题的开始。当我查看Twill 1.8.0的代码时,我发现它似乎还没有适应PRINT的这个变化,字符串没有用括号包起来。所以我在想,是否有新的补丁或者版本的Twill可以适应Python的这些变化?或者除了手动编辑Twill文件之外,我还有什么其他办法吗?

非常感谢你的回复。

4 个回答

1

你试过安装twill3吗?

pip install twill3
2

好的,Twill 2.0版本发布了,支持现代的Python版本。

Twill 2.0发布信息页面

而且,Twill 3也来了 - Twill 3

3

这个回答只部分解决了我的问题(我在Windows上使用Python 3.6)。下载了Twill 1.8.0并用2to3转换只是第一步。

接下来,我还需要安装一些缺失的包:

pip install lxml
pip install requests
pip install pypiwin32
pip install cssselect

此外,我还需要修复Python36/lib/site-packages/twill/other_packages/中的两个文件: 在subprocess.py文件中,我删除了第392行的False = 0这一部分,并把第353行的if 0:改成了if 1:,这样就避免了使用_subprocess。 最后,在pyparsing.py中,我把.lowercase替换成了.lower(),把.uppercase替换成了.upper()

3

我刚找到答案。谢谢你们看这个问题,也许还给了我一个踩(伤心脸)……我找到的解决办法是使用Python文件夹里的2to3脚本工具。简单来说,它可以把Python 2的代码转换成Python 3的代码。

撰写回答