1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/g1879-DrissionPage

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.en.md

✨️ Обзор

DrissionPage — это инструмент автоматизации веб-страниц на основе Python.

Он может управлять браузером, отправлять и получать данные, а также объединять эти две функции в одну.

Он учитывает удобство автоматизации браузера и высокую эффективность запросов.

Этот инструмент мощный и имеет множество встроенных удобных дизайнов и функций.

Его синтаксис лаконичен и элегантен, количество кода минимально, и он дружелюбен к новичкам.


 star

Адрес проекта: gitee | github

Ваша звезда — моя наибольшая поддержка💖


Поддерживаемые системы: Windows, Linux, Mac

Версия Python: 3.6 и выше

Поддерживаемые браузеры: браузеры на базе Chromium (например, Chrome и Edge), приложения на базе Electron


🛠 Как использовать

📖 Документация по использованию: Перейти к просмотру

Коммуникационная группа QQ: 636361957


📕 Фон

При использовании requests для сбора данных, когда требуется вход на сайт, необходимо анализировать пакеты данных и исходный код JavaScript, создавать сложные запросы и часто сталкиваться с методами защиты от скрапинга, такими как капчи, обфускация JavaScript и параметры подписи. Это повышает порог вхождения и снижает эффективность разработки. Использование браузера позволяет во многом избежать этих проблем, но браузер не очень эффективен.Поэтому первоначальная цель этой библиотеки — объединить эти два подхода и достичь одновременно "быстрой разработки" и "быстрого выполнения". Она может переключаться на соответствующий режим при разных потребностях и предоставляет удобный способ использования, что повышает эффективность разработки и эксплуатации. Помимо объединения двух подходов, эта библиотека также инкапсулирует часто используемые функции в веб-страницах, предоставляя очень простые операции и выражения, что позволяет пользователям меньше заботиться о деталях и сосредоточиться на реализации функций. Реализовать мощные функции простым способом и сделать ваш код более элегантным.

Ранняя версия была реализована путем переупаковки Selenium. Начиная с версии 3.0, автор начал с нуля, переработал нижний уровень, избавился от зависимости от Selenium, расширил функциональность и повысил производительность.---

💡 Концепция

Просто и мощно!


☀️ Возможности и особенности

После длительной практики автор прошел через множество ловушек, и весь его опыт был записан в эту библиотеку.

🎇 Мощное собственное ядро

Эта библиотека использует полностью саморазработанное ядро, имеет встроенные N полезных функций и интегрировала и оптимизировала распространенные функции. По сравнению с Selenium, она имеет следующие преимущества:- Не основана на webdriver

  • Нет необходимости скачивать различные драйверы для разных версий браузеров
  • Работает быстрее
  • Может находить элементы внутри <iframe> без переключения между ними
  • Обрабатывает <iframe> как обычный элемент. После получения его можно напрямую искать элементы внутри, что делает логику более понятной
  • Можно одновременно управлять несколькими вкладками браузера, даже если вкладка неактивна, нет необходимости переключаться
  • Может напрямую читать кэш браузера для сохранения изображений без использования графического интерфейса
  • Может делать скриншоты всей веб-страницы, включая части за пределами области просмотра (поддерживается браузерами версии 90 и выше)
  • Может обрабатывать shadow-root в закрытом состоянии

🎇 Основные особенности

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

  • Поиск элементов проще, функционал более мощный и стабильный.
  • Универсальная функция ожидания и автоматической повторной попытки. Упрощает управление нестабильными сетями, делает программы более стабильными и написание кода менее тревожным.
  • Предоставляет мощные инструменты для загрузки. При работе с браузером можно наслаждаться быстрыми и надежными функциями загрузки.
  • Позволяет многократно использовать уже открытые браузеры. Нет необходимости каждый раз запускать браузер заново, что делает отладку очень удобной.
  • Использует ini-файлы для сохранения часто используемых конфигураций и автоматического вызова их, предоставляя удобные настройки и избавляя от сложных конфигурационных элементов.
  • Встроенная lxml в качестве парсингового движка, скорость парсинга повышается на несколько порядков.
  • Оборачивается с использованием модели POM, что позволяет напрямую использовать её для тестирования и легко расширять.
  • Высокоинтегрированные удобные функции, отраженные во всех деталях.
  • Деталей много, поэтому я не буду их все перечислять здесь. Приглашаем вас оценить их в реальном использовании:)---# 🖐🏻 Оговорка

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


☕ Купите мне кофе

Если этот проект вам полезен, почему бы не купить автору чашку кофе :)

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

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

Обновления (45)

все

Участники

все

Язык

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/g1879-DrissionPage.git
git@api.gitlife.ru:oschina-mirror/g1879-DrissionPage.git
oschina-mirror
g1879-DrissionPage
g1879-DrissionPage
dev