ghost.py 0.2.3 TimeoutError:无法加载请求的页面 - javascript

我在ghost.py版本上:0.2.3
我想获取网页内javascript变量的值。
运行此简单脚本时,出现错误“无法加载请求的页面”:

from ghost import Ghost
    ghost = Ghost()

with ghost.start() as session:
    page, extra_resources = session.open("http://www.offi.fr/concerts/les-3-arts-3305/belle-epoque-944532.html")
    js_variable, _ = session.evaluate('map.mapUrl', expect_loading=True)
    print js_variable

这是ipython中的结果:

---------------------------------------------------------------------------
TimeoutError                              Traceback (most recent call last)
<ipython-input-19-3c24eef8745a> in <module>()
      1 with ghost.start() as session:
      2         page, extra_resources = session.open("http://www.offi.fr/concerts/les-3-arts-3305/belle-epoque-944532.html")
----> 3         js_variable, _ = session.evaluate('map.mapUrl', expect_loading=True)
      4         print js_variable
      5 

/usr/local/lib/python2.7/dist-packages/ghost/ghost.pyc in wrapper(self, *args, **kwargs)
    179             func(self, *args, **kwargs)
    180             return self.wait_for_page_loaded(
--> 181                 timeout=kwargs.pop('timeout', None))
    182         return func(self, *args, **kwargs)
    183     return wrapper

/usr/local/lib/python2.7/dist-packages/ghost/ghost.pyc in wait_for_page_loaded(self, timeout)
   1194         """
   1195         self.wait_for(lambda: self.loaded,
-> 1196                       'Unable to load requested page', timeout)
   1197         resources = self._release_last_resources()
   1198         page = None

/usr/local/lib/python2.7/dist-packages/ghost/ghost.pyc in wait_for(self, condition, timeout_message, timeout)
   1172         while not condition():
   1173             if time.time() > (started_at + timeout):
-> 1174                 raise TimeoutError(timeout_message)
   1175             self.sleep()
   1176             if self.wait_callback is not None:

TimeoutError: Unable to load requested page

你能帮我指出我错了吗?
是否有其他方法来获取javascript变量值?

非常感谢。

参考方案

好的,我找到了另一个解决方案来获取javascript变量:
与selenium / phantomJS:

from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get('http://www.offi.fr/concerts/les-3-arts-3305/belle-epoque-944532.html')
driver.execute_script('return map.mapUrl')

但是我仍然对ghost.py 0.2.3的解决方案感兴趣:)

Javascript-从当前网址中删除查询字符串 - javascript

单击提交按钮后,我需要从网址中删除查询字符串值。我可以用jQuery做到这一点吗?当前网址:siteUrl/page.php?key=value 页面提交后:siteUrl/page.php 实际上,我已经从另一个带有查询字符串的页面着陆到当前页面。我需要在页面首次加载时查询字符串值以预填充一些详细信息。但是,一旦我提交了表格,我就需要删除查询字符串值。我已…

Javascript IF语句 - javascript

                        嗨,我有这段代码可以正常工作,并将两个日历显示为一个日历。我还有一个php变量$login_session,其中包含登录电子邮件地址的用户。关于如何显示[email protected]日历的任何想法(伪代码)IF $login_session == "[email protected]&#…

如何根据手势滚动网页 - javascript

如何使用pyhton / javascript使用手势向上/向下或向左/向右滚动页面。我尝试了很多找到解决方案,但无法解决。 参考方案 Javascript手势插件(JSHG)是一个很棒的插件,它使您可以通过现有网站或Web应用程序中的网络摄像头来支持用户的手势识别。您无需具有计算机视觉的任何背景即可使用此插件。当前,它提供了一组基本的手势,其中包括手的位置…

从一个脚本到另一个脚本的统一变量访问 - javascript

所以我有一个统一的3D文本上的文本网格脚本,我希望它从具有OnMouseDown函数的多维数据集中访问一个变量,在该函数内部它会更改分数,并且我希望将该分数输出到文本。当我在CS中编写文本脚本时,多维数据集脚本是用JavaScript编写的。谁有想法? 参考方案 如果我误解了您的问题,请纠正我。选项1:C#代码在js代码之前进行编译,这意味着您无权从c#代码…

在文本字段中键入时显示预制建议列表 - javascript

如标题所说我正在处理一个mysql项目,我希望该文本字段在键入它时向现有用户提供建议(管理员控制页以禁止用户..类似的东西)一个简单的例子来解释:当我输入文字时..我想给用户输入建议假设他正在输入颜色名称所以当他在其中输入b在他继续之前,会出现一个列表,向他提供我们预先设定的建议,例如:黑色棕色蓝色然后如果他输入l为bl该列表将是:黑色蓝色布拉布拉有什么建议…