Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.12.2018, 15:19   #1
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию Как организовать чтение информации с сайта?

Хочу написать программу для сбора информации с сайта hotlіne c раздела "АНАЛОГИ" и все предложения для каждой позиции.

так как моих познаний не хватило что-бы разобраться в результате какого запроса к сайту я могу получить список, я решил что буду делать через Selenium - открыл страницу, нашел елементы, сохранил.

Вижу алгоритм работы:
Код:
на вход подается список ссылок, для которых нужна информация (список1)
foreach ссылкa из список1
    открыть в Selenium ссылкa
    перейти на вкладку АНАЛОГИ
    найти все товары
    foreach товар in товары
        сохранить Фото-бренд-код товара-название-цена в таблицу1
        програмно нажать "Все предложения"
           с новооткрытой страницы получить весь список Сравнить позиции в таблица2
           нажать "Вернуться назад" в браузере
сохранить таблица1 и таблица2 в файл.
Может таким быть путь или есть оптимальнее?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 10.12.2018, 22:30   #2
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,520
По умолчанию

Я бы взял HtmlAgilityPack и не забивал себе голову открытыми страницами. Загрузил страницу - распарсил и ничего никуда программно нажимать не нужно.
искать элементы соответственно через XPath.
Вообще выполняются запросы вида:
запрос цен на товар:
https://hotline.ua/ax/febi-bilstein_32378/load-prices/
возвращается вполне себе понятный json
запрос аналогов:
https://hotline.ua/ax/febi-bilstein_...=1544469434582
возвращается кусок html кода страницы, содержащий вкладку Аналоги.
повозиться только нужно с куками и разобраться что за число передаётся в параметре _. Так просто данные не отдаст, нужно сделать вид, что зашли как все нормальные люди, получить какой-нибудь идентификатор сессии или типа того.
Алгоритм зависит от целей.
Найти самый дешевый товар или его аналог - это одно. Собрать все возможные варианты - другое. Учитывать при этом наличие - третье.
pu4koff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как организовать админку для сайта? alextrof94 PHP 2 04.09.2013 13:37
Чтение Информации Из Файла, C# 803 Общие вопросы .NET 2 24.01.2013 08:31
Чтение информации с Ext2/3 medved6216 Общие вопросы Delphi 0 22.10.2011 17:52