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

OSCHINA-MIRROR/g1879-DrissionPage

20.04.2025 00:59
GitLife Service Account
  • Добавлено свойство child_count к элементам
  • К каждому свойству класса Settings добавлены методы set_****()
  • Добавлены английские сообщения об ошибках и предупреждения
  • Добавлены исключения LocatorError и UnknownError
  • Метод ShadowRoot теперь может возвращать текстовые или числовые результаты по xpath
  • Метод attrs класса SessionElement теперь возвращает необработанные атрибуты ссылок
  • Исключение WrongURLError переименовано в IncorrectURLError
  • Путь suffixes_list_path переименован в suffixes_list
  • В методе attr() класса ChromiumElement параметр attr переименован в name
  • Изменены некоторые типы ошибок
  • Исправлена проблема с режимом инкогнито в методе new_tab()
  • Исправлены ошибки при выполнении JavaScript
  • Исправлена проблема с установкой suffixes_list
  • Исправлена проблема с доступом к локальным путям Linux в классе SessionPage
  • Исправлены неправильные координаты экрана элементов внутри iframe
Последнее сообщение коммита: 修复两个问题
14.03.2025 00:17
GitLife Service Account

Исправление проблем и оптимизация

Последнее сообщение коммита: 4.1.0.14修复执行js的一个问题
14.03.2025 00:17
GitLife Service Account

Добавлен объект Chromium вместо объектов ChromiumPage и WebPage.

Последнее сообщение коммита: 4.1.0.7修复xpath不唯一的问题
14.03.2025 00:17
GitLife Service Account

На основе 3.2 были добавлены много новых функций, а также перестроено внутреннее устройство.

Последнее сообщение коммита: !35 v4.0.2
14.03.2025 00:17
GitLife Service Account
  • Браузер отвечает на симулированные действия даже в режиме минимизации
  • Управление браузером не требует параметра '--remote-allow-origins=*'
  • Атрибут tabs игнорирует заявленную конфиденциальность
  • Исправлена ошибка выбора версий браузера 8.x в выпадающем списке
  • Исправлено отсутствие триггеров взаимодействия при определённых условиях использования выпадающего списка
  • Исправлены проблемы при повреждении файла конфигурации
  • Исправлено отключение метода get() при наличии специальных символов в параметре url
Последнее сообщение коммита: !27 3.2.35
14.03.2025 00:17
GitLife Service Account
  • Автоматический переход в безголовый режим при запуске Linux без графического интерфейса
  • Добавление путей к системным браузерам по умолчанию для macOS и Linux
  • Устранение проблем с захватом скриншотов элементов
  • Устранение проблемы неправильного ожидания завершения процесса браузера методом quit()
  • Подавление лишних сообщений в macOS и Linux
  • Устранение проблемы некорректной установки свойства timeout методом set.timeouts()
  • Устранение маловероятных ошибок при закрытии вкладки
  • Устранение проблем с неточностью размера элементов в некоторых случаях
Последнее сообщение коммита: !24 v3.2.33
14.03.2025 00:16
GitLife Service Account

Исправление некоторых проблем

Последнее сообщение коммита: 3.2.30
14.03.2025 00:16
GitLife Service Account
  • Оптимизация логики захвата данных пакетов, удаление параметра targets в wait.data_packets()
  • Действия типа type() теперь могут принимать list и tuple
  • Объекты страниц браузера теперь могут непосредственно вернуть текст или комментарий с использованием xpath
  • Восстановлена поддержка Python 3.6
  • Полностью удалены ранее объявленные устаревшие методы и свойства
  • Добавлена возможность использования диапазона портов в режиме auto_port
  • Устранено ошибочное поведение select.by_index()
  • Устранено ошибочное поведение get_session_storage()
  • Устранено отсутствие триггеринга onChange при работе со списками выбора
  • Устранено ошибочное поведение работы с элементами внутри iframe с использованием s_ele()
  • Незначительно скорректирована логика run_js()
Последнее сообщение коммита: 3.2.27
14.03.2025 00:16
GitLife Service Account

См. историю версий.

14.03.2025 00:16
GitLife Service Account

См. историю версий документа.

Последнее сообщение коммита: 3.2.24修复同域iframe问题;改进等待数据包功能
14.03.2025 00:16
GitLife Service Account
  • Улучшение функционала загрузки

    • ChromiumPage также может использовать встроенный загрузчик для скачивания файлов

    • Возможность перехвата и управления задачами загрузки браузера

    • Добавлен атрибут download_set для настройки параметров загрузки

    • Добавлена методика wait_download_begin()

  • Улучшение настроек запуска браузера

    • Оптимизация структуры файла ini

    • Введение нового класса ChromiumOptions, заменившего DriverOptions

    • Добавление автоматического назначения портов

    • Оптимизация дизайна класса SessionOptions с добавлением множества методов для настройки параметров

    • Улучшение настроек конфигурационного профиля пользователя

  • Рефакторинг части кода

    • Оптимизация логики запуска объектов страниц

    • Оптимизация логики конфигурационных классов

    • Оптимизация структуры проекта

  • Подробности

    • Поддержка передачи относительных путей при загрузке файлов
  • Набор улучшений и исправлений проблем

14.03.2025 00:16
GitLife Service Account

Представлен WebPage, который был переработан с нуля, чтобы отказаться от зависимости от Selenium и улучшить функциональность и производительность. Поддерживает браузеры на основе Chromium (например, Chrome и Edge). Преимущества перед MixPage:

  • Отсутствие признаков WebDriver, что позволяет избежать распознавания сайтом;
  • Нет необходимости в скачивании различных версий драйверов для разных версий браузера;
  • Более высокая скорость выполнения;
  • Возможность поиска элементов через iframe без необходимости входить и выходить из него;
  • Обработка iframe как обычных элементов, позволяющая после получения прямого доступа к элементам внутри iframe, что делает логику более понятной;
  • Возможность одновременной работы с несколькими вкладками в браузере, даже если они неактивны;
  • Прямое чтение данных из кэша браузера для сохранения изображений, без необходимости использовать графический интерфейс пользователя для сохранения;
  • Возможность создания скриншотов всего веб-страницы, включая область за пределами области просмотра (поддерживается в браузерах версии bk и выше).Другие обновления:
  • Добавлены классы ChromiumTab и ChromiumFrame для управления вкладками и iframe;
  • Введены новые действия ActionChains для взаимодействия с WebPage;
  • Реализовано конфигурирование запуска браузера для поддержки плагинов;
  • Реализовано конфигурирование запуска браузера для поддержки свойства prefs в experimental_options;
  • Используются stub-файлы вместо аннотаций типов;
  • Выполнено множество других улучшений и исправлений ошибок.
Последнее сообщение коммита: 修改文档
14.03.2025 00:16
GitLife Service Account
  • В методах screenshot() страницы объектов и объектов элементов добавлен параметр bytes, который позволяет возвращать изображение в виде байтов.
  • Метод input() автоматически преобразует нематричные параметры в текстовый ввод.
14.03.2025 00:15
GitLife Service Account
  • DriverPage
    • Добавлены методы get_session_storage(), get_local_storage(), set_session_storage(), set_local_storage(), clear_cache()
    • Параметр cmd_args в методе run_cdp() изменён на **cmd_args
  • При закрытии драйвера активно завершается процесс chromedriver.exe
  • Улучшена логика завершения процессов браузера
Последнее сообщение коммита: 2.7.1修复使用Anaconda中关闭driver时的小问题
14.03.2025 00:15
GitLife Service Account
  • Добавлен параметр timeout в методы select(), deselect() и другие методы работы со списками, чтобы можно было ждать загрузки элементов списка.
  • Улучшена обработка сообщений о предупреждениях.
  • Методы drag() и drag_to() больше не проверяют успешность выполнения, а просто возвращают None.
  • Методы, наследуемые объектами DriverOptions от родительских классов, теперь поддерживают цепочку вызовов.
  • Другие улучшения и исправление ошибок.
Последнее сообщение коммита: 2.5.7
14.03.2025 00:15
GitLife Service Account
  • Замените метод download() библиотекой DownloadKit для поддержки многопоточной загрузки.
  • В класс DriverPage добавьте метод set_ua_to_tab().
  • Удалите метод scroll_to() (замените его свойством scroll).
  • Другие оптимизации и исправления ошибок.
Последнее сообщение коммита: 2.5.0
14.03.2025 00:15
GitLife Service Account
  • Замените методы wait_ele(), to_frame() и scroll_to() на использование классов вместо выбора функций в виде строк.
  • Преобразуйте метод scroll_to() с использованием атрибута scroll.
  • Добавьте способ выбора to_location() для прокрутки страницы или элемента.
  • Оптимизируйте класс Select и измените способ его использования.
Последнее сообщение коммита: 修改文档
14.03.2025 00:15
GitLife Service Account
  • Добавлен метод forward() в DriverPage
  • Метод close_current_tab() в DriverPage переименован в close_tabs() и теперь позволяет закрывать несколько вкладок одновременно
  • В DriverPage добавлен метод run_async_script()
  • В DriverPage добавлена возможность установки значений времени через свойство timeouts
  • В DriverPage добавлен метод set_timeouts()
  • В DriverElement добавлен метод scroll_to(), который позволяет прокручивать содержимое элемента
  • В DriverOptions добавлен метод set_page_load_strategy()
  • В файле ini добавлены три новых свойства: page_load_strategy, set_window_rect, timeouts
  • Прочие улучшения и исправление ошибок
Последнее сообщение коммита: 2.3.0
14.03.2025 00:15
GitLife Service Account
  • Добавлены методы относительной позиционировки на основе макета страницы: left(), right(), below(), above(), near(), lefts(), rights(), belows(), aboves(), nears()
  • Изменены методы относительной позиционировки на основе DOM: удалён метод parents(), свойство parent преобразовано в метод parent(), свойство next — в метод next(), свойство prev — в метод prev(); методы nexts() и prevs() теперь возвращают несколько объектов
  • Добавлены методы относительной позиционировки на основе DOM: after(), before(), afters(), before()
  • Расширена синтаксическая конструкция позиционирования за счёт добавления синтаксиса @@ и @@-, позволяющего одновременно выполнять поиск по нескольким условиям и исключать некоторые из них
  • Улучшено поведение ShadowRootElement: теперь можно использовать полный синтаксис позиционирования при поиске элементов внутри shadow-root
  • Атрибуты after и before класса DriverElement переименованы в pseudo_after и pseudo_before соответственно
  • В метод input() класса DriverElement добавлен параметр timeout
  • В метод clear() класса DriverElement добавлен параметр insure_clear
  • Оптимизирован метод submit() класса DriverElement
  • Класс DriverPage получил новый атрибут active_ele для получения текущего активного элемента
  • Метод get_style_property() класса DriverPage переименован в style()
  • В метод hover() класса DriverPage добавлен параметр смещения
  • Атрибут current_tab_num класса DriverPage переименован в current_tab_index
  • Метод to_frame() класса DriverPage теперь возвращает сам объект страницы, что позволяет удобнее строить цепочки вызовов- Улучшен алгоритм автоматической загрузки драйвера
  • Метод set_paths() класса получил новый параметр local_port
  • По умолчанию браузер запускается на порту 9222
  • Прочие улучшения и исправление ошибок
Последнее сообщение коммита: 微调
14.03.2025 00:14
GitLife Service Account
  • Поддержка создания SessionElement из DriverElement или HTML-текста, что позволяет значительно увеличить скорость парсинга страниц в режиме d (используются новые методы s_ele() и s_eles())
  • Возможность скрытия и отображения окна браузера в любое время (поддерживается только на Windows)
  • В режимах s и d используется одна и та же логика извлечения текста, что существенно повышает эффективность извлечения текста в режиме d
  • input() автоматически проверяет корректность ввода
  • click() поддерживает повторные попытки при неудаче, что позволяет гарантировать успешное нажатие и ожидание исчезновения маскирующих слоёв страницы
  • Устранены проблемы с путями файловой системы для Linux и macOS
  • download() более точно получает имя файла
  • Другие улучшения стабильности и производительности
Последнее сообщение коммита: 2.0.0
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