Создать CSV из HTML-страниц - PullRequest
3 голосов
/ 07 июля 2011

Существует веб-сайт, который отображает много данных в виде HTML-таблиц. Они разбили на страницы данные, так что их около 500 страниц.

Какой самый удобный (простой) способ получить данные из этих таблиц и загрузить их в формате CSV в Windows?

В основном мне нужно написать скрипт, который делает что-то подобное, но излишне писать в C #, и я ищу другие решения, которые используют люди с веб-опытом:

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

Спасибо!

Ответы [ 2 ]

0 голосов
/ 07 июля 2011

Самый простой способ не на C # - использовать Wget для загрузки страницы, затем запустить HTMLTidy , чтобы преобразовать ее в XML / XHTML и затем преобразовать полученный XML в CSV с XSLT (запустить с MSXSL.exe )

Вам придется написать несколько простых пакетных файлов и XSLT с базовым селектором XPath.

Если вы чувствуете, что было бы проще сделать это в C #, вы можете использовать SgmlReader , чтобы прочитать HTML DOM и выполнить запрос XPath для извлечения данных. Он не должен занимать более 20 строк кода.

0 голосов
/ 07 июля 2011

Я однажды делал приложение для очистки экрана и обнаружил, что BeautifulSoup очень полезно.Вы можете легко добавить это в скрипт Python и проанализировать все теги с конкретным идентификатором, который вы ищете.

...