我希望能够截取Morningstar网页。晨星公司提供有关共同基金的信息,我经常查询但在其他地方找不到,即
以下是一个示例:morningstar example
作为屏幕抓图的前奏,我需要能够下载包含所需内容的网页。不幸的是,当我尝试使用Java SE6或wget来检索上面的示例链接时,我只获得了一部分html(显示总返回数字的表格不存在)。如果我使用浏览器(Chrome),我会得到相同的结果,仅将页面保存为html。我注意到如果我使用我的浏览器保存整个页面(html,js,css和其他所有内容),下载的html确实包含有趣的信息。
我有两个问题:
感谢。
作为旁注,我将Yahoo Finance和YQL / datatables视为替代品,但Yahoo Finance并未提供百分位排名。如果你查看共同基金的表现,你会看到排名的N / A值。 Yahoo Finance example。不幸的是,这将排除使用YQL /数据表。
关于晨星版权的任何问题,我在个人非商业用途中进行屏幕抓取,其版权声明允许在第二段的最后一句中使用:
您有权使用其中包含的私人信息, 仅限非商业用途。 Morningstar Copyright
答案 0 :(得分:3)
要下载晨星网页,我需要一个可以下载和解释与网页相关的javascript代码的工具。 StackOverflow上提到了许多用于不同编程语言和浏览器的工具。以下是我最后使用的内容:
答案 1 :(得分:1)
因此该页面广泛使用XMLHttpRequest来填充数据,这意味着您的scraper必须执行javascript评估。如果您使用Chrome中的开发人员工具,则可以看到用于构建页面的HTML和用于构建表格的JSON数据。
为了抓取这个,我会尝试使用Internet Explorer,因为它可以托管整个页面并执行javascript评估。可能有其他方法可以使用API,例如WebKit,但IE应该可以直接使用。
答案 2 :(得分:0)
你在http://irobotsoft.com试过irobot吗?您可以通过以下方式进行验证:
他们有一个论坛,您可以在其中询问一般的屏幕搜索问题