2011-02-08 6 views
1

Я - очень новый программист. На веб-сайте предоставляется множество zip-файлов, которые мне нужны. Он будет обновляться/загружать новые файлы ZIP за неделю. Что мне нужно сделать, так это написать программу/скрипт, чтобы делать автоматическую загрузку из Интернета в неделю. Например, это веб-ссылка http://www.google.com/googlebooks/uspto-patents-applications-yellowbook.html (вы можете видеть там много почтовых файлов)Автоматическая загрузка файлов с определенного сайта

поэтому мой вопрос:

  1. Какой сценарий мне нужно написать (у меня не было опыта написания сценария, так что вы можете предложить?), Поэтому я могу программно скачать zip-файл?

  2. Если первый вопрос был решен, то как мне заставить его загружать новый файл zip, загружаемый еженедельно?

Должен ли я использовать DOM ... unix? если да, я сделаю некоторые исследования по тату, чтобы заставить его работать.

+0

Меняют ли имена почтовых файлов каждую неделю или они постоянны? –

+0

DOM не имеет ничего общего с UNIX. – DoctorLouie

+0

thx для ответа, drlouie и Michael ... http://www.google.com/googlebooks/uspto-patents-applications-yellowbook.html, как ссылка, вы можете видеть zip-файлы там .. имя будет быть изменен в зависимости от даты его загрузки. – DEN

ответ

1

Почему wget? Вы можете использовать HtmlAgilityPack для анализа веб-сайта и извлечения всех ссылок. Затем вы просто перебираете все URL-адреса и загружаете файл, используя C# на всем протяжении. Вы также можете открыть процесс wget из C#, если хотите.

С другой стороны, это можно легко сделать с помощью bash и sed/awk и grep в сочетании с wget.

В любом случае вам понадобится cron, чтобы планировать работу на еженедельной основе.

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

quandary, can cron работает в окнах? – DEN

+0

Есть порт windows (cronw.sourceforge.net), но почему бы не просто использовать планировщик Windows, когда вы находитесь в Windows? –

0

Если вы работаете в Linux/UNIX, используйте «wget» в сценарии для загрузки файлов и «cron», чтобы запланировать сценарий загрузки.

+0

Имена меняются каждую неделю - скрипинг экрана также будет задействован, чтобы получить список ссылок не будет? –

+0

ya, справа. так что wget все еще может работать? – DEN

+0

Возможно, вам нужно будет создать список URL-адресов, которые вы хотите сначала «wget». –

1

Я также очень эффективно использовать JSoup (http://jsoup.org/) в приложениях Java/Scala, чтобы очистить данные из веб-страниц.

Смежные вопросы