在Ubuntu 10.04上运行dogtail示例脚本
我最近安装了Dogtail,这是一个开源的图形用户界面测试工具和自动化框架。我把一个示例脚本下载到了我的电脑上(链接:https://fedorahosted.org/dogtail/browser/examples/gedit-test-utf8-tree-api.py?format=txt),但是在运行的时候遇到了问题。当我尝试运行它时,出现了一个提示信息:
corey@corey-laptop:~/Desktop/exercise$ ./gedit-test-utf8-tree-api.py
Traceback (most recent call last):
File "./gedit-test-utf8-tree-api.py", line 6, in <module>
from dogtail import tree
File "/home/joe/Desktop/exercise/dogtail.py", line 6, in <module>
from dogtail import tree
ImportError: cannot import name tree
我使用的是Ubuntu 10.04。我不太明白为什么这个脚本不能运行,或者该怎么解决这个问题。有没有什么建议?
3 个回答
1
我的问题解决了,因为我把dogtail安装在了/usr/local,而不是/usr。安装的时候我运行了命令:./setup.py install --prefix=/usr/local。
1
从你的错误信息来看,似乎你还没有安装dogtail。
你是在~/Desktop/exercise这个文件夹里运行的。
dogtail.py文件就在这个文件夹里,它应该是一个叫做dogtail的包,里面有一个叫做tree.py的文件。这个dogtail.py是你自己写的吗,还是dogtail框架的一部分?
这里面有些问题。
3
不要把文件命名为 dogtail
,放在 /home/joe/Desktop/exercise 这个文件夹里:
File "/home/joe/Desktop/exercise/dogtail.py", line 6, in <module>
from dogtail import tree
因为这样的话,Python 会优先导入你自己写的 dogtail.py 文件,而不是位于 /usr/share/python-support/python-dogtail/dogtail 这个地方的包。
为了验证这个想法,你可以打开 Python 解释器,然后输入:
import dogtail
dogtail.__file__
这样可以查看 dogtail 是从哪里来的。