Недавно поступил заказ на парсинг данных с популярного портала Юла, покупки и продажи объявлений для физических лиц. Аналог, Авито, тоже пользуется популярностью, причем более давней нежели данное решение, но именно Юла предлагает сбор информации через API, чем мы и воспользуемся.
Сбор данных
При помощи моего любимого ПО :ZennoPoster: я беру необходимые элементы для запросов GET к API Юлы, затем путем нахождения через формат JSON вставляю информацию либо напрямую в таблицу, либо в список. Проще всего, конечно, найти и завести все данные, а потом уже сортировать по столбцам - таким способом вы минуете участь потери каких-то важных данных.
Преимущества API
Помимо скорости парсинга через API вы получаете:
- Точную выдачу без каких-либо ошибок;
- Минимальную нагрузку на процессор за счет неиспользования браузера;
- Минимум кода, в том числе C#;
- Понимание, как устроены запросы GET.
Итоги парсинга
Несмотря на все вышеперечисленные плюсы такого подхода сбора информации, нужно отметить что а всегда необходимо проверять на наличие ошибок конечный результат. Это не означает, что вы должны звонить по указанным в объявлениях телефонам и уточнить корректность данных. Просто пробегитесь глазами по новому списку и выделите в случае необходимости точные элементы, или наоборот, удалите их. Как вариант, у ZennoPoster есть отличная функция - удаление дублей, грех не воспользоваться.
Блоки или C#?
Программа позволяет создавать скрипты как через внутренние блоки, встроенные в сам софт, так и при помощи кода C#, JS. Что лучше - решать только вам, но по производительности, конечно, C# - быстрее, универсальнее и с наименьшим количеством ошибок. Если вы только начинаете изучать :ZennoPoster:, то рекомендую начинать с азов программы, т.е. стандартных блоков. Постепенно будете совершенствоваться и улучшать навыки в написании кода C#, а следовательно оптимизировать скорость своих творений и конечных скриптов.
Примечание: парсинг данных идет по всей России, т.е. клиент задает ключевые слова, а программа собирает информацию по всем городам РФ и кладет нужные телефоны в список.
Отправить запрос на услугу
[contact-form-7 id="54138" title="Контактная форма price"]Статья была полезна?