自动从特定网站下载文件

时间:2011-02-08 05:59:44

标签: asp.net unix cron screen-scraping scheduled-tasks

我是一个非常新的程序员..一个网站提供了我需要的大量zip文件。它将每周更新/上传新的zip文件。我需要做的是编写一个程序/脚本来每周从网上自动下载..例如,这是网络链接http://www.google.com/googlebooks/uspto-patents-applications-yellowbook.html(你可以在那里看到很多zip文件)

所以我的问题是

  1. 我必须编写什么脚本(我没有编写任何脚本的经验,所以你能建议什么?)所以我可以通过编程方式下载zip文件?

  2. 如果第一个问题解决了,那我应该如何下载每周上传的新zip文件?

  3. 我是否必须使用DOM ... unix?如果是的话,我会做一些研究,以使其发挥作用。

3 个答案:

答案 0 :(得分:1)

为什么要忘记?您可以使用HtmlAgilityPack来解析网站并提取所有链接。然后你只需循环遍历所有网址并下载文件,一直使用C#。如果您愿意,也可以从c#打开wget进程。

另一方面,这可以使用bash和sed / awk以及grep与wget结合使用。

无论哪种方式,您仍然需要cron每周安排工作。

WebClient Client = new WebClient ();
Client.DownloadFile("http://www.csharpfriends.com/Members/index.aspx", "index.aspx");

答案 1 :(得分:1)

我还在Java / Scala应用程序中非常有效地使用JSoup(http://jsoup.org/)从网页中删除数据。

答案 2 :(得分:0)

如果您使用的是Linux / UNIX,请在脚本中使用“wget”下载文件,使用“cron”来安排下载脚本。