быстрый парсинг html
От: x-code  
Дата: 02.01.09 21:50
Оценка:
Ищется язык программирования и/или библиотека для сабжа.
Цель — пакетная обработка информации из социальных сетей. Т.е. программа генерируем некий html-запрос, скачивает страницы, находит на них нужную инфу, фильтрует, если надо — генерирует дополнительные ссылки и обращается по ним, и т.д. Короче, это нечто должно быть заточено под структуру html, уметь работать с регулярными выражениями и т.д.
Скорее всего, это должно быть что-то типа динамического языка программирования, perl, python, ruby или что-то типа такого, причем легкое для освоения. Но вот что? Ясно что не С++ на котором я в основном пишу. Очень буду признателен, если ткнете носом в то что нужно
Re: быстрый парсинг html
От: c-smile Канада http://terrainformatica.com
Дата: 02.01.09 22:37
Оценка:
Здравствуйте, x-code, Вы писали:

XC>Ищется язык программирования и/или библиотека для сабжа.


Это называется web mining.

Соответсвенно google on : "perl web mining", "python web mining", "ruby web mining" и т.д.
Re[2]: быстрый парсинг html
От: Nikolay_ США  
Дата: 03.01.09 06:16
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Здравствуйте, x-code, Вы писали:


XC>>Ищется язык программирования и/или библиотека для сабжа.


CS>Это называется web mining.


CS>Соответсвенно google on : "perl web mining", "python web mining", "ruby web mining" и т.д.


Скорее scraping.
Re[3]: быстрый парсинг html
От: x-code  
Дата: 05.01.09 16:57
Оценка:
Здравствуйте, Nikolay_, Вы писали:

CS>>Это называется web mining.

CS>>Соответсвенно google on : "perl web mining", "python web mining", "ruby web mining" и т.д.
N_>Скорее scraping.

За название спасибо, знать как это называется — уже 30% дела
А готовых решений (ну не решений, конечно — примеров решений) не существует?

PS: может ветку перетащить в Динамические языки, там скорее подскажут? Или оставить здесь?
Re: быстрый парсинг html
От: Аноним  
Дата: 06.01.09 17:38
Оценка:
Regex =)
Re[2]: быстрый парсинг html
От: x-code  
Дата: 10.01.09 21:37
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Regex =)


Мне нужен regex, заточенный под html, а не под любой текст Т.е. какой-то DOM-парсер html, и к нему прикрутить regex...
есть ли такое?
Re[3]: быстрый парсинг html
От: c-smile Канада http://terrainformatica.com
Дата: 11.01.09 06:11
Оценка:
Здравствуйте, x-code, Вы писали:

XC>Здравствуйте, Аноним, Вы писали:


А>>Regex =)


XC>Мне нужен regex, заточенный под html, а не под любой текст Т.е. какой-то DOM-парсер html, и к нему прикрутить regex...

XC>есть ли такое?

А DOM тебе зачем?

Найти в html все <a> это тривально:
http://www.codeproject.com/KB/recipes/HTML_XML_Scanner.aspx
Re[4]: быстрый парсинг html
От: x-code  
Дата: 11.01.09 09:42
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>А DOM тебе зачем?


CS>Найти в html все <a> это тривально:

CS>http://www.codeproject.com/KB/recipes/HTML_XML_Scanner.aspx

Я такие штуки сам на С++ писал Это тривиально, но сначала нужно скачать страницу через wininet, загрузить ее в буфер, буферами нужно управлять, страницы которые генерируются CGI не имеют заранее известного размера, т.е. нужны динамические буфера, и т.д.
С++ для всего этого слишком низкоуровневый, хотя я писал специализированные качалки именно на С++.

DOM — затем что интуиция подсказывает, что голый regex — тоже слишком низкоуровневый механизм. Другими словами, нужен специализированный regex, ориентированный на теги в угловых скобках, чтобы я мог абстрагироваться от поиска тегов как таковых и заниматься в чистом виде поиском ДАННЫХ.
Re[5]: быстрый парсинг html
От: c-smile Канада http://terrainformatica.com
Дата: 11.01.09 21:07
Оценка:
Здравствуйте, x-code, Вы писали:

XC>Здравствуйте, c-smile, Вы писали:


CS>>А DOM тебе зачем?


CS>>Найти в html все <a> это тривально:

CS>>http://www.codeproject.com/KB/recipes/HTML_XML_Scanner.aspx

XC>Я такие штуки сам на С++ писал Это тривиально, но сначала нужно скачать страницу через wininet, загрузить ее в буфер, буферами нужно управлять, страницы которые генерируются CGI не имеют заранее известного размера, т.е. нужны динамические буфера, и т.д.

XC>С++ для всего этого слишком низкоуровневый, хотя я писал специализированные качалки именно на С++.

XC>DOM — затем что интуиция подсказывает, что голый regex — тоже слишком низкоуровневый механизм. Другими словами, нужен специализированный regex, ориентированный на теги в угловых скобках, чтобы я мог абстрагироваться от поиска тегов как таковых и заниматься в чистом виде поиском ДАННЫХ.


Тогда htmlite из htmlayout. Он тебе загрузит документ и построит DOM. В котором ты уже можешь делать
root.find_all(cb, "a:link")
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.