下面是不起作用的简单程序
from ghost import Ghost
ghost = Ghost(wait_timeout=40)
page, extra_resources = ghost.open("http://samsung.com/in/consumer/mobile-phone/mobile-phone/smartphone/")
ghost.wait_page_loaded()
n=2;
links=ghost.evaluate("alist=document.getElementsByTagName('a');alist")
print links错误为:引发异常(Timeout_message)
异常:无法加载请求的页面
iS程序有什么问题吗?
发布于 2013-01-29 12:23:19
似乎人们报告了与您类似的问题,但却没有真正得到任何解释(例如:https://github.com/jeanphix/Ghost.py/issues/26)
将evaluate行调整为ghost.py文档所引用的内容:
links = gh.evaluate("""
var links = document.querySelectorAll("a");
var listRet = [];
for (var i=0; i<links.length; i++){
listRet.push(links[i].href);
}
listRet;
""")发布于 2013-05-27 15:05:11
当我第一次使用Ghost.py时,我尝试的每个页面都会出现这个错误,我解决这个问题的方法是废弃PyQt,转而安装PySide。不管怎么说,这帮我解决了这个问题。
发布于 2013-11-17 11:21:28
我不得不在ghost.py wait_for_page_loaded函数中添加额外的逻辑:
reTmp = str(resource.url)
if "PyQt4" in reTmp:
reTmp = str(reTmp).replace("PyQt4.QtCore.QUrl(u\'", "").replace("\')","")
if url == reTmp:
page = resourcePyQt在resource.url中添加了愚蠢的垃圾,因此url==resource.url永远不能正确加载页面。
https://stackoverflow.com/questions/14575181
复制相似问题