Comments 10
Наше расширение будет управлять куками на сайте.
Здорово! Но, не слишком интересно. Лучше сделайте расширение для скачивания страниц, например, онлайн-словаря, с задержкой, с возможностью обхода капчи, вручную. У меня такой код занял три килобайта. Ваши, аналогичные, файлы – четыре.
По крайней мере, будет польза, иметь под рукой какой-нибудь электронный словарь.
Зачем? Есть же возможность скачать HTML страницу целиком, а дальше её хоть MD файл можно преобразовать
Зачем? Есть же возможность скачать HTML страницу целиком, а дальше её хоть MD файл можно преобразовать
Так я и скачиваю html-страницы целиком. И только затем уже делаю их постобработку, на Питоне. Только таких страниц (словарных статей) порядка ста тысяч. Сайт не позволяет их скачивать много и быстро. Выставляю задержку между запросами – пять секунд, обычно хватает (хотя, на другом сайте требовалось не менее 15 секунд, но там уже не было капчи, поэтому, достаточно было, вместо расширения Хрома, использовать тот же Питон). При этом, сайт позволяет работать до следующей капчи от пяти до 30 минут. Капчи вводятся вручную, поэтому, за процессом скачивания нужно, периодически, поглядывать. Иногда сайт капризничает и просит ввести подряд несколько капч. Тогда, проще, перезагрузить браузер (Хром).
Обработка словарных статей (в html-страницах) – занятие, само по себе, сложное, в силу слабой структурированности данных. В итоге, данные словаря представляю в текстовом виде, в нескольких вариантах. Текст – наиболее удобный для дальнейшей работы.
P.S. Самое ценное, в расширениях Хром, на мой взгляд, это способность обходить (хотя и вручную) капчи. Если ее нет, то Питон справляется на «ура». Питон и с капчами может работать, но, как по мне, слишком сложно. Проще использовать расширения, для этих целей.
А selenium не рассматривался? Или не подошел по каким-то причинам?
Selenium –это большой проект и для его использования нужны большие основания. У меня задача была попроще – скачать несколько онлайн-словарей для самообразования. Для одного из них хватило простого Питона (без сложных библиотек), а для остальных старой версии Хром (версия 109), для того, чтобы сохранить возможность работы со второй версией манифеста. Поскольку, в последних выпусках Хрома доступен только третий манифест (если я не ошибаюсь), а он уже имеет ограничения в работе, которых не было во втором манифесте. Это касается и блокировщика рекламы сайтов и работы с файлами. А Хром нужен, как я уже упоминал, для (ручного) обхода капчи – «дешево и сердито».
Другим словами, нужно было «ехать», а не «шашечки». И если эту задачу решает «велосипед», то зачем тогда нужен «мерседес?
Использование связки из питона и расширения браузера выглядит, на мой не особо опытный взгляд, не просто велосипедом, а велосипедом из костылей. Селениум же, по ощущениям, дал бы аналогичный функционал меньшими усилиями, потому и спрашивал, какова была мотивация такого выбора
Ну, куда уж меньше? Суммарный объем скрипта расширения – всего три килобайта. Его работа заключалась только в загрузке примерно ста тысяч html-страниц, с каждого сайта и ничего более. С этой работой он прекрасно справился. Единственный минус – долго, в связи с онлайн ограничениями. Но, я никуда не торопился, задача выполнялась в фоновом режиме.
Теперь, о Питоне. Он вообще никак не связан с расширением. Его задача – сделать постобработку, в офф-лайне, полученного контента. Возьмите любую электронную версию словаря и попробуйте структурировать словарные статьи. Это совершенно независимая задача. И очень трудная, кстати. Она решалась уже после того, как все данные были получены и то не сразу.
Поэтому, я не вполне понимаю, о какой связке вы говорите? И как тут может помочь Селениум, в принципе? Ускорить загрузку данных? – Сомневаюсь, это прихоть сайтов, которая слабо связанна с нашими возможностями. Помочь сделать постобработку словарных статей? – То же сомнительно! Поэтому, без конкретного примера, эти рассуждения плохо воспринимаются…
Нравится тема браузерных экстеншенов, спасибо. Но вот вижу let'ы без переопределений и сразу вопросики)
Кто бы сделал расширение, которое делало бы все куки "вечными"
Пишем простое расширение для браузера