Javascript ghost.py 0.2.3 TimeoutError:无法加载请求的页面
我使用的是ghost.py版本:0.2.3 我想获取网页中javascript变量的值。 运行此简单脚本时,出现错误“无法加载请求的页面”: 以下是ipython中的结果:Javascript ghost.py 0.2.3 TimeoutError:无法加载请求的页面,javascript,python,html,dom,web-scraping,Javascript,Python,Html,Dom,Web Scraping,我使用的是ghost.py版本:0.2.3 我想获取网页中javascript变量的值。 运行此简单脚本时,出现错误“无法加载请求的页面”: 以下是ipython中的结果: --------------------------------------------------------------------------- TimeoutError Traceback (most recent call last) <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
---------------------------------------------------------------------------
TimeoutError回溯(最近一次呼叫上次)
在()
1将ghost.start()作为会话:
2页,额外资源=会话。打开(“http://www.offi.fr/concerts/les-3-arts-3305/belle-epoque-944532.html")
---->3 js_变量,u=session.evaluate('map.mapUrl',expect_loading=True)
4打印js_变量
5.
/包装器中的usr/local/lib/python2.7/dist-packages/ghost/ghost.pyc(self,*args,**kwargs)
179 func(self,*args,**kwargs)
180返回自我。等待加载页面(
-->181 timeout=kwargs.pop('timeout',None))
182返回函数(self,*args,**kwargs)
183返回包装器
/usr/local/lib/python2.7/dist-packages/ghost/ghost.pyc正在等待加载的页面(self,超时)
1194 """
1195自动。等待(lambda:自动加载,
->1196“无法加载请求的页面”,超时)
1197 resources=self.\u release\u last\u resources()
1198页=无
/usr/local/lib/python2.7/dist-packages/ghost/ghost.pyc in wait_for(self、condition、timeout_消息、timeout)
1172而不是条件():
1173如果time.time()>(在+超时时开始):
->1174 raise TimeoutError(超时消息)
1175自我睡眠
1176如果self.wait_回调不是None:
TimeoutError:无法加载请求的页面
你能帮我指出哪里错了吗?
是否有其他方法获取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变量的解决方案: 使用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:)的解决方案感兴趣