如何从在线数据库下载大量信息?

如何从在线数据库下载大量信息?

我从事的研究项目使用了私人公司提供的多个数据库。我需要从其中一个数据库获取大量信息,以便对信息进行统计测试。问题是该网站不太方便用户使用,每次只允许我下载 10 个案例(一张表)(将有大约 25,000 张表需要下载...)。有什么建议吗?

这是我迄今为止尝试过的方法: - DownThemAll(Firefox Web 浏览器的一个应用程序)允许我一次性下载 10 张表格。这很棒,但离我的需求还很远。这里的问题是,我必须按“下一步”按钮才能看到要下载的下一张表格的数量 - 而 DownThemAll 没有注意到它应该按该按钮并继续下载该页面上列出的表格,并不断重复该过程。

是否存在一种编程语言可以帮助我执行以下操作:执行一个 for 循环,要求它登录数据库,获取部分信息,注销,然后再次登录,获取更多信息,注销等,直到获取全部信息?


更新

只是写信感谢大家 - 我没有足够的代表来投票支持你的答案 - 或者只是留下评论感谢你的时间。

答案1

正如 slhck 指出的那样,您几乎可以使用任何通用编程语言来做到这一点。

然而,处理 cookies 和其他浏览器特定行为可能需要一些额外的工作。

有些库试图在某种程度上模拟浏览器,请检查 mechanize http://wwwsearch.sourceforge.net/mechanize/ (Python)

和卷曲 http://curl.haxx.se/libcurl/ 据我所知,它具有几种语言的端口和绑定。

当然,我们假设您可以/应该这样做。

答案2

您可以尝试支持登录的递归网站下载器,例如离线资源管理器专业版(不免费)。它允许您使用其内部浏览器登录,并使用生成的 cookie 来抓取网站。论坛讨论关于这一点。

如果存在可以实现这一功能的免费软件,我很想知道。

相关内容