DrissionPage — это страница, состоящая из драйвера и сеанса. Это инструмент интеграции операций веб-автоматизации на основе Python.
Он использует режим POM для инкапсуляции общих методов страниц и элементов и поставляется с набором простого, интуитивно понятного и элегантного синтаксиса позиционирования элементов, который реализует плавное переключение между браузерами и запросами, принимая во внимание удобство автоматизации браузера и высокую эффективность Эффективность и, что еще лучше, его использование очень краткое и удобное для пользователя, с меньшим количеством кода и дружелюбное к новичкам.
При использовании запросов на сбор данных, когда вы сталкиваетесь с веб-сайтом, на который хотите войти, вам приходится анализировать пакеты данных и исходный код JS, создавать сложные запросы и часто иметь дело с методами защиты от сканирования, такими как коды проверки, обфускация JS. и параметры подписи. Порог высокий. Если данные генерируются путем расчета JS, процесс расчета необходимо воспроизвести, что приводит к плохому опыту и низкой эффективности разработки.
Использование браузера может во многом обойти эти ловушки, но браузер не очень эффективен. Таким образом, эта библиотека объединяет их в один, переключает соответствующие режимы при необходимости и предоставляет гуманный метод использования для повышения эффективности разработки и эксплуатации.
Помимо объединения этих двух функций, эта библиотека также инкапсулирует часто используемые функции в блоки веб-страницы и предоставляет очень простые операции и операторы. При использовании для автоматизированных операций с веб-страницами снижается необходимость рассматривать детали и сосредотачиваться на реализации функций, что делает ее более удобной. удобно использовать.
Делайте все просто, старайтесь предоставить простые и понятные методы использования и будьте более дружелюбны к новичкам.
Автор наступил на бесчисленное количество ловушек и обобщил весь свой опыт в этой библиотеке. В него встроено множество практических функций, а часто используемые функции интегрированы и оптимизированы.
характеристика
1. Код высокоинтегрирован, в первую очередь краткий код.
2. Объект страницы можно по желанию переключать между браузером и запросами, при этом статус входа сохраняется.
3. Чрезвычайно простой, но мощный синтаксис позиционирования элементов, поддерживает цепные операции, а код чрезвычайно краток.
4. Оба режима обеспечивают согласованные API и единообразный опыт использования.
5. Гуманизированный дизайн, объединяющий множество практических функций, значительно снижающий рабочую нагрузку при разработке.
1. Вы можете повторно использовать открытый браузер при каждом запуске программы. Например, вручную установите веб-страницу в определенное состояние, а затем используйте программу, чтобы взять на себя управление, или вручную обработайте вход в систему, а затем используйте программу для сканирования содержимого. Нет необходимости каждый раз запускать браузер с нуля, что очень удобно.
2. Используйте ini-файлы для сохранения часто используемых конфигураций и автоматического их вызова. Он также предоставляет удобный API настройки, позволяющий избежать сложных элементов конфигурации.
3. Чрезвычайно лаконичный синтаксис позиционирования поддерживает позиционирование элементов непосредственно по тексту и непосредственное получение родственных элементов и родительских элементов до и после.
4. Мощный инструмент загрузки: вы можете наслаждаться быстрой и надежной функцией загрузки при работе в браузере.
5. Инструмент загрузки поддерживает несколько методов разрешения конфликтов имен файлов, автоматического создания целевых путей, отключения и повторной попытки и т. д.
6. URL-адрес доступа имеет функцию автоматического повтора, можно установить интервал и время ожидания.
7. При доступе к веб-страницам кодировка может распознаваться автоматически без ручной настройки.
8. Параметры ссылки по умолчанию автоматически генерируют атрибуты Host и Referer.
9. Вы можете в любое время напрямую скрыть или отобразить окно процесса браузера, не отключая его и не сворачивая.
10. Он может автоматически загружать соответствующий хромированный драйвер, исключая трудоемкую настройку.
11. Элемент поиска в режиме d имеет встроенное ожидание, а глобальное время ожидания или время ожидания одиночного поиска можно установить произвольно.
12. Элемент щелчка объединяет метод щелчка js, и метод щелчка можно переключить с помощью одного параметра.
13. Щелчки поддерживают неудачные повторные попытки, которые можно использовать для обеспечения успешных кликов, определения того, исчезает ли слой маски веб-страницы и т. д.
14. Ввод текста может автоматически определить, был ли он успешным, и повторить попытку, чтобы избежать неправильного ввода или очистки при определенных обстоятельствах.
15. Режим d поддерживает полнофункциональный xpath, который может напрямую получать атрибут элемента. Selenium не имеет этой функции изначально.
16. Поддерживает прямое получение теневого корня и управляет элементами под ним как обычными элементами.
17. Поддерживает прямой доступ к содержимому псевдоэлементов after и before.
18. Вы можете использовать > непосредственно под элементом, чтобы получить прямые дочерние элементы текущего элемента с помощью селектора CSS. Этот метод записи не поддерживается изначально.
19. Вы можете просто использовать lxml для анализа страниц или элементов в режиме d, и скорость сканирования сложных данных страницы значительно увеличивается.
20. Выходные данные были перекодированы и обработаны для базового набора текста в целях сокращения дублирования работы.
21. Его можно легко подключить к Selenium или запросить собственный код для облегчения миграции проекта.
22. Используя упаковку в режиме POM, ее можно использовать непосредственно для тестирования и легко расширять.
23. Конфигурация режима d совместима с debugger_address и другими параметрами одновременно, но собственная конфигурация несовместима.
24. Есть еще много того, что здесь не указано...