awesome-python-login-model (Kr1s77/awesome-python-login-model)
Searching Database…
Что это такое?
Набор примеров скриптов на Python 3, которые имитируют вход на популярные сайты — в основном китайские, такие как Zhihu, Bilibili, Weibo, JD (JingDong) и Taobao, а также Facebook и GitHub, — плюс несколько простых краулеров. Задуман как учебный материал по имитации входа и техникам парсинга.
Это одна программа, которую я устанавливаю, или куча отдельных скриптов?
Куча отдельных скриптов: для каждого сайта есть свой самостоятельный пример на Python 3, и вы запускаете только тот, который нужен. Пакета для установки нет, и единого CLI, который управлял бы всеми сайтами, тоже нет.
Как запустить один из этих скриптов входа?
В README нет инструкций по установке; на практике нужно склонировать репозиторий, выбрать скрипт для нужного сайта, настроить selenium с WebDriver для Chrome или Firefox и запустить его через Python 3.
Что нужно установить, кроме Python?
selenium и WebDriver для Chrome или Firefox — в разделе README про WebDriver называются ровно эти два браузера. Некоторые скрипты также предполагают, что вы переиспользуете куки после входа с помощью requests или scrapy для самого сбора данных.
Эти способы входа справляются с капчей?
Нет — ни один из методов в этом проекте не работает с капчей. Автор пишет, что распознавание сложных капчей по-прежнему очень трудная задача, и советует при парсинге обходить их стороной, а не пытаться решать.
Это будет работать на Windows или только на Linux?
Операционная система нигде не упоминается: это обычные скрипты на Python 3 и selenium для Chrome или Firefox, значит подойдёт любая настольная ОС, где они работают, — Windows, macOS или Linux.
Код под открытой лицензией, могу ли я его переиспользовать?
В README лицензия не указана; есть только пометка, что проект предназначен для учёбы и обмена опытом, поэтому условия переиспользования не определены — не рассчитывайте на стандартные разрешения открытых лицензий.
Какие сайты здесь есть?
Скрипты входа для Xiami Music, Facebook, веб-версии Weibo, Zhihu, QQ Zone, CSDN, Taobao, Baidu, Guokr, JingDong (включая автоматическую подачу заявок на бесплатные пробники JD), 163 Mail, Lagou, Bilibili, Douban, Liepin, веб-версии WeChat со сбором списка друзей, GitHub и NetEase Cloud Music, а также краулеры для фото с Tuchong, QiuShi BaiKe, Baidu Tieba и Baidu Translate.
Как вообще происходит вход — как у реального пользователя в браузере?
Двумя способами: прямой вход через повтор запросов авторизации сайта (иногда полученных с помощью реверс-инжиниринга JS) либо selenium с WebDriver, который управляет настоящим браузером. Автор отмечает, что прямой вход очень сложен для сайтов вроде QQ Zone и Bilibili, где проще пойти через selenium; после входа куки сохраняются, чтобы requests или scrapy могли собирать данные на полной скорости.
Эти скрипты до сих пор работают?
Не все. В самом каталоге вход на Lagou помечен как устаревший, а краулер Taobao — как переделываемый, и автор объясняет, что сайты меняют свои правила и оформление, из-за чего код ломается, — он просит сообщать о проблемах в issues и присылать PR с исправлениями. Будьте готовы отлаживать, прежде чем скрипт заработает.
Этот репозиторий для обучения или для реального парсинга в продакшене?
Для обучения. В README сказано, что проект только для учёбы и обмена опытом, а автор упоминает, что готовит бесплатный туториал по парсингу, который, по его словам, научит собирать данные с большинства сайтов в интернете. Относитесь к каждому скрипту как к разобранному примеру техники, а не к готовому инструменту для продакшена.
What are similar projects?
learn_python3_spider, botasaurus, undetected-chromedriver, MediaCrawler, catbus, invisible_selenium, CloakBrowser, EasySpider
Which topics is it in?
weibo, webdriver, login, selenium, captcha, crawler, web-scraping, browser-automation, reverse-engineering, chinese, python, windows