Как стать автором
Обновить

Комментарии 32

Статья о том, как делать http-запросы и обрабатывать полученный html - серьёзно? Ну могли б хотя бы распарсить сайт, закрытый аутентификацией, или лимитировать количество запросов к ресурсу, использовать прокси, разгадывать каптчи, а так слишком примитивно как-то, прямо совсем.

Человек явно постарался, на фоне некоторых "статей", которые непонятно что делают на хабре - это научная диссертация. Если такие заметки https://habr.com/ru/post/645893/ набирают на хабре такие результаты, то почему эта хорошо оформленная и возможно кому-то полезная (каким нибудь новичкам пришедшим из гугла), не может быть опубликована на хабре?

Ну, в Кодексе авторов Хабра написано "Я пользуюсь поиском, чтобы уточнить, нет ли уже на сайте похожего материала. Если так вышло, я дополню его в комментариях.". То есть вот эта статья через поиск не нашлась?

Если сравнивать с тем примером, что вы привели, то эта статья лучше оформлена, несет больше смысловой нагрузки и показывает больше лайфхаков. Не говорю уже про другой стек технологий.

Вы правда считаете, что эта статья хорошо оформленная? Все вот эти "заинспектить, тулзы, коллы, хедеры, риквест, сорс, солюшн" - может быть действительно у них нет русских синонимов. Но приводить код без комментариев с тегом "tutorial" - это точно не комильфо.

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

Попробуйте парсить поисковики в несколько потоков, там все будет очень интересно - капчи, JS, прокси...

Например, определять Top30 сайтов по запросу "купить пластиковые окна" в Google по Киеву или Москве.

Статья называется "...любой сайт", но любой сайт так просто спарсить не получится, вот Вам сайт который защищён от парсинга, аутентификацией не закрыт, попробуйте спарсить - https://kad.arbitr.ru

Нет смысла парсить этот сайт, на порядок быстрее и проще спарсить ресурсы откуда этот сайт напарсил свои результаты - sudrf.ru, сайт минюста и т.п.

Avito, например, или парсить выдачу Яндекса/Гугла, как уже выше предлагали

спарсите всех фолловеров у человека в твиттере. Любого человека, у которого хотя бы 100к фолловеров) Допустим, у него twitter.com/yurydud

Честно говоря душу бы продал сейчас за толковый мануал по аутентификации на ресурсах с авторизацией через microsoftonline.com )

Создай свою

НЛО прилетело и опубликовало эту надпись здесь

да, вы правы, не любой

Так исправьте заголовок. Как парсить википедию.

Если вы реально попробуете парсить какой нибудь сайт объявлений, то для вас будет очень много интересных открытий.

Да, про карате в песочнице - красиво :) Ну, да, я понимаю, что человек пытался продемонстрировать общие походы на проекте, который специально сделан так, чтобы максимально удобно распространять знания, чтобы информацию из него можно было брать без такого вот превознемогания. Но всё равно не удержусь:

Да, для Википедии распространяются snapshot'ы, есть публичный API, через который эту задачу решить проще. https://uk.wikipedia.org/api

Что касается перевода, то в той таблице все названия пород - это ссылки на соответствующие статьи. Причём большинство статей - существуют, так что из Викиданных (это тоже проект Викимедиа, в симбиоз с которым работает Википедия) можно просто брать переводы на другие языки, причём практически без риска неточностей, в отличие от Google translate.

Да и вообще, всю нужную для этой статьи информацию можно получить в готовом виде через несложный SPARQL-запрос к Вики-данные. https://query.wikidata.org/

Туториал: https://wikidata.org/wiki/Wikidata:SPARQL_tutorial

Чтобы не быть голословным, по ссылке набросал запрос. Кликаете по ссылке, нажимаете "выполнить запрос" (или ctrl+enter) - и вуаля!

Убеждаемся, что сорс фото валидный, и у нас есть доступ туда без никакой авторизации и прочих вещей.

В Википедии не может быть картинок с "какими авторизации и прочими вещами": картинки там либо с неё самой, либо с Викисклада (ещё одного проекта Викимедиа, в симбиозе с которым работает Википедия, и который тоже открытый).

Спасибо, за уточнения)

Вот за такие ответы я и люблю Хабр! Если сама статья, возможно, и представляет какую-то ценность (хотя человек, пообещавший нам некоторые "общие подходы", применимые для "любого веб-ресурса", с третьей строки своего повествования свалился в абсолютные частности), то именно ваше сообщение на конкретном примере с котиками открыло мне новые общие принципы работы с Википедией.

Уполз изучать SPARQL. Спасибо!

Хабр - это когда комментарии к статье зачастую несут больше информации чем сама статья. Спасибо

Всё бесполезно и говнисто на фоне nightmare/puppeteer но спишем на то, что вы .net, полезно было про заголовки. Парсил много на фрилансе включая с динамическим прокси и обходом капчи. То что реализовано здесь в гору каких-то крайностей, можно реализовать в 20 строк на nightmare.

Ну здесь тулзы для автоматизации не сильно нужно, какой-то оверинжиниринг уже, ибо ССР есть, все, что нужно в респонсе - тоже есть, запускал я это один раз что бы перекатить в постгрес. Мне нужны были породы котов. То, что написано в сорс коде статьи - тоже можна намного компактнее уложить без проблем.

НЛО прилетело и опубликовало эту надпись здесь

Иногда как раз "дешевле" завести скрипт puppeter / playwright в полторы строчки, быстро реализовав навигацию по материалам нужного сайта "визуальным" способом (в духе "тыкнуть эту кнопку, прочитать этот фрагмент, повторить"), а не мучаясь с реверсинжинирингом всех нужных запросов, кук и заголовков, что задумал разработчик сайта (и не боясь SPA/PWA). Да ещё если и заготовка от парсера другого сайта уже есть :). Парсеры - продукт зачастую одноразовый и наколеночный, нужный здесь и сейчас, а не какой-то долгоиграющий автономный сервис (такие сервисы обычно долго не живут, ибо завязаны на стороннюю скрытую архитектуру). Мы же экономим время и ресурсы программиста, а не машины :).

НЛО прилетело и опубликовало эту надпись здесь

Играл, и для меня в итоге оказалось проще именно на вебките :). Да, вы будете из религиозных побуждений и чувства прекрасного пол часа реверсить заголовки какого-нибудь неожиданно сопротивляющегося парсингу сайта, а я за пять минут вероломно напрягу свой процессор вебкитом и займусь чем-нибудь полезным :).

Но я не настаиваю на абсолюте своего мнения, конечно, оба варианта имеют право на жизнь, ведь всё дело в задачах и предпочтениях программиста и способах масштабирования своего опыта, а не в каких-то там "так правильнее :).

не могу не отметить кликбейтный заголовок (тоже периодически занимаюсь парсингом). ожидал увидеть какой-то оригинальный подход, а оказывается это просто основы

Selenium+OCR - вот где мэйнстрим )

Открыл эту страницу. Выделил таблицу с породами. Скопипастил её в Excel. Вставилась без проблем. Дальше с этой таблицей можно делать что угодно.

Или я что-то не понял и ваш парсинг извлекает больше информации?
НЛО прилетело и опубликовало эту надпись здесь

От новичков благодарствую. Очень полезно. Всем кто писал возмущенные коменты типа API взять проще, nightmare/puppeteer, три строчки в консоли и прочее - тоже благодарность)))

Умничайте дальше, а я читать буду ?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации