有一个网站在html表格中显示大量数据。他们对数据进行了分页,因此大约有500页。
在Windows上获取数据并将其下载为CSV的最常用(简单)方法是什么?
基本上我需要编写一个类似这样的脚本但是过于用C#写入并且我正在寻找具有Web经验的人使用的其他解决方案:
for(i=1 to 500)
load page from http://x/page_i.html;
parse the source and get the data in table with id='data'
save results in csv
谢谢!
答案 0 :(得分:0)
我正在做一次屏幕抓取应用,发现BeautifulSoup非常有用。您可以轻松地将其转换为Python脚本,并使用您正在查找的特定ID解析所有标记。
答案 1 :(得分:0)
我能想到的最简单的非C#方式是使用Wget下载页面,然后运行HTMLTidy将其转换为XML / XHTML,然后将生成的XML转换为CSV格式XSLT(使用MSXSL.exe运行)
您必须编写一些简单的批处理文件和一个带有基本XPath选择器的XSLT。
如果您认为在C#中执行此操作会更容易,则可以使用SgmlReader来读取HTML DOM并执行XPath查询以提取数据。它不应该超过大约20行代码。