使用Python从网站获取非HTML数据
我想把这个页面上的当前合约价格提取成一个字符串:http://www.cmegroup.com/trading/equity-index/us-index/e-mini-sandp500.html
我希望能找到一个适用于Python 2.6的解决方案。
用urllib获取页面的HTML很简单,但似乎这个价格是实时更新的,并不在HTML里面。我在Chrome中检查了这个元素,发现它是某个td类的东西。
但我不知道怎么用Python来获取这个数据。我试过beautifulsoup(但在Windows x64系统上搞了好几次都没能让tar.gz工作),然后又试了elementtree,但其实我对编程的兴趣主要在数据分析上。我不是网站设计师,也不想成为,所以这些东西对我来说有点陌生。这是实时价格的XML吗?
任何帮助都非常感谢。理想情况下,希望能有一个简单安装的模块和一些实际的代码,但所有的提示和建议我都很欢迎。
3 个回答
0
在不知道这个数字是从哪里来的情况下,很难给你具体的建议。这个数字可能是用php或者asp生成的,所以你需要先弄清楚这个数字是用哪种语言产生的。
2
看起来表格里的数字是通过Javascript填充的,所以单纯用urllib或者其他库去获取HTML是不够的,因为这些库不会运行Javascript。你需要用像PyQt这样的库来模拟浏览器渲染页面/执行Javascript,以便填充数字,然后再抓取输出的HTML。
可以参考这篇关于使用PyQt的博客文章: http://blog.motane.lu/2009/07/07/downloading-a-pages-content-with-python-and-webkit/链接文本