powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Анализ содержимого сайта
5 сообщений из 5, страница 1 из 1
Анализ содержимого сайта
    #36579855
Ilya_M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравстуйте,
не знаю в ту ли тему написал, так что если что извиняйте.
Поставлена задача написать прогу, которая может анализировать содержимое некоего сайта на предмет появления новой информации, содержащей определенный контент (ключевые слова). Если новая информация есть, то уведомить пользователя.
Раньше ничего такого не писал и анализом сайтов не сталкивался. Есть начальное представление как делать:
1. каким то образом обойти все содержимое сайта и выдернуть его для анализа
2. проанализировать содержимое на наличие искомого контента

Хотелось бы услышать мнение форумчан, как бы они это делали, что использовали, в чем реализовали, какие могут быть трудности.
...
Рейтинг: 0 / 0
Анализ содержимого сайта
    #36579912
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ilya_M1. каким то образом обойти все содержимое сайта и выдернуть его для анализа
2. проанализировать содержимое на наличие искомого контента1. Классы для взаимодействия по http. Для C#, например, WebClient или HttpWebRequest/HttpWebResponse. Получаем текст html. В нем ищем ссылки, по ним тоже выполняем запросы.
2. Например, регулярные выражения.
...
Рейтинг: 0 / 0
Анализ содержимого сайта
    #36579963
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С давних времен есть такая стандартная утилита, как wget. Она предназначена для выкачки сайтов, умеет залазить по ссылкам и рукурсивно выкачивать все что надо. Подробности . Есть ее порт под винду. Так что писать качалку точно не понадобиться.
После того, как тулза выкачает все, можете напустить на нее либо свою парсалку либо стороннюю, да хоть тото-же grep/awk итп. Так что проблему можно вообще решить bat-файлами.
...
Рейтинг: 0 / 0
Анализ содержимого сайта
    #36580092
belugin4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я бы написал на PowerShell или Python:

PoSh:

1. Скачать при помощи WebClient
2. Выдрать при помощи select-string
3. Сравнить при помощи compare-object

пример тут

Python: есть библиотечка для разбора

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
# Here's a real-world example. It fetches the ICC Commercial Crime Services weekly piracy # report, parses it with Beautiful Soup, and pulls out the piracy incidents: 

import urllib2
from BeautifulSoup import BeautifulSoup

page = urllib2.urlopen("http://www.icc-ccs.org/prc/piracyreport.php")
soup = BeautifulSoup(page)
for incident in soup('td', width="90%"):
    where, linebreak, what = incident.contents[: 3 ]
    print where.strip()
    print what.strip()
    print


В питоне также есть библиотеска для diff
...
Рейтинг: 0 / 0
Анализ содержимого сайта
    #36584672
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IMHO конечно. Когда на сайте не слишком много страниц, полное скачивание сайта wget'ом можно считать приемлемым. А когда страниц очень много (новостной сайт или форум, например), да ещё ajax используется - что то сомневаюсь в разумности такого подхода.
Опять же, как часто следует проверять и как быстро уведомить пользователя? Чтоб выкачать и пропарсить сайт в десять тыщ страниц полчаса может и не хватить. Можно нарваться и на блокировку от чрезмерно большого количества запросов, хотя, такой облом бывает не слишком часто.
Мож на сайте есть экспорт в RSS или Atom с последними изменениями? Тогда имеет смысл использовать его как указатель на обновлённые страницы.
По поводу проверки на наличие ключевых слов - можно так же посмотреть в сторону поисковиков. Конечно, сайт может быть запрещён для индексации, да и роботы не каждый день заходят. Так что, это только как вариант.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Анализ содержимого сайта
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]