|
8 / 6 / 3
Регистрация: 24.05.2013
Сообщений: 43
|
||||||||||||||||
.NET 4.x Парсинг сайтов28.04.2020, 16:22. Показов 4629. Ответов 3
Метки нет (Все метки)
Приветствую! Пишу парсер сайтов, задумка следующая - в это нелёгкое время мой кот всё равно хочет ходить в туалет, а народ нищает, поэтому хочу спарсить на всех популярных интернет-магазинах наполнитель для туалета силикагелевый, в список заносится информация о цене, названии и ссылка на товар, затем из названия "вычленяется" объём товара и высчитывается цена за единицу товара, после чего список упорядочивается по этому параметру и выгружается в CSV файл. Для парсинга решено использовать библиотеку AngleSharp.
Был создан класс OutList в качестве типа данных, там заданы необходимые поля и методы. Был создан класс Ozon в качестве парсера сайта ozon, решил начать именно с этого магазина. Парсер грузит страницу прямо по ссылке с установленными фильтрами, т.е. ничего к ссылке не добавляет (пока пытаюсь загрузить хотя бы 1 страницу, потом в цикл засуну) Дальше методом Parse я пытаюсь из полученной страницы по тегам вытащить нужную мне информацию - цену, название и ссылку, затем занести данный товар в список. Собственно на этом этапе у меня и возникли трудности, парсер я пишу впервые и многое не понимаю: 1) Теги по которым я ищу информацию постоянно меняются, как с этим бороться я не понимаю 2) На странице 36 товаров, мой парсер записывает только 4 3) Пробелы из строки цены так и не удаляются из-за чего не преобразуется в int Подскажите, что я делаю не так и как мне побороть эти проблемы, прикрепляю листинг классов и проект целиком P.S. На обилие комментариев внимание не обращайте, это по совместительству моя самостоятельная работа по учёбе, преподаватель требует комментировать каждую строчку ![]() Ozon Кликните здесь для просмотра всего текста
OutList Кликните здесь для просмотра всего текста
Program Кликните здесь для просмотра всего текста
Вдохновлялся этим плейлистом: Кликните здесь для просмотра всего текста
0
|
||||||||||||||||
| 28.04.2020, 16:22 | |
|
Ответы с готовыми решениями:
3
Парсинг сайтов, написанных на javascript
Парсинг динамических сайтов |
|
управление сложностью
|
|||
| 28.04.2020, 19:16 | |||
0
|
|||
|
8 / 6 / 3
Регистрация: 24.05.2013
Сообщений: 43
|
|||
| 28.04.2020, 22:11 [ТС] | |||
|
0
|
|||
|
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
|
|
| 28.04.2020, 22:29 | |
|
Использовать API, если оно есть, иначе:
- Выучить, что есть XPath, и достать значение 1 запросом - Проанализировать несколько страниц и определить, что от страницы к странице не меняется, как выполняется навигация - Лучше использовать HtmlAgilityPack и HttpClient Ничего работать не будет, если сайт стильный, молодежный и рисует все с помощью JavaScript. В этом случае есть два подхода: 1. Использовать библиотеку для эмуляции JavaScript. 2. Загрузить страницу браузером и только потом парсить.
1
|
|
| 28.04.2020, 22:29 | |
|
Помогаю со студенческими работами здесь
4
Парсинг сайтов Парсинг сайтов парсинг сайтов Парсинг сайтов Парсинг сайтов на Python Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|