Skip to content

Releases: g1879/DrissionPage

v4.0.4.3

30 Jan 03:40
e68676b
Compare
Choose a tag to compare

v3.2.31

20 Aug 08:28
Compare
Choose a tag to compare
  • 页面类增加user_agent属性
  • 重新设计find_tabs()方法
  • new_tab()方法的switch_to属性默认改为False
  • scroll.to_see()方法的center参数默认改为None
  • ChromiumOptions执行set_argument('--headless')时能自动使用正确的写法
  • get()支持 ipv6
  • 问题修复
    • 修复wait.data_packets()出现的小概率丢失目标报错
    • 修复当网站 headers 不规范时获取不到编码问题
    • 解决滚动后点击被页面上固定元素遮挡问题
    • 修复某些情况下back()后退不准确的情况
    • 修复'Secure-aa''Host-'开头的 cookie 不能设置的问题
    • 修复WebPageget_cookies()方法不能获取所有域名的问题
    • 修复wait.load_start()不能正确设置超时的问题

v3.2.27

02 May 12:43
8259380
Compare
Choose a tag to compare
  • 优化抓取数据包逻辑,wait.data_packets()删除targets参数
  • 动作链type()可接收list和tuple
  • 浏览器页面对象现在可用 xpath 直接返回文本或注释
  • 恢复对 python 3.6 支持
  • 完全删除之前声明废弃的方法和属性
  • 增加auto_port模式可使用端口范围
  • 修复select.by_index()报错
  • 修复get_session_storage()报错
  • 修复下拉框没有触发onChange问题
  • 修复<iframe>中元素使用s_ele()时出现的问题
  • 微调run_js()逻辑

v3.2.24

04 Apr 01:27
019b8f9
Compare
Choose a tag to compare
  • 新功能
    • 相对定位增加child()children()方法
    • 相对定位增加ele_only参数
    • 页面对象增加get_frames()方法
    • 页面对象增加wait.new_tab()方法
    • 页面对象增加wait.data_packets()方法
    • ChromiumPge增加find_tabs()方法
    • 元素对象增加focus()方法
    • 元素对象增加states.is_checked属性
    • 录屏功能增加非节俭模式和 js 模式
    • 可设置无法点击时抛出异常
  • api 和特性变更
    • click()删除wait_loading参数
    • drag()drag_to()speed参数改为duration
    • set_headless()方法适配新版浏览器
    • ChromiumPage创建时可只接受端口号
    • new_tab()现在会返回新标签页 id
    • get_frame()方法增加timeout参数,且可接收 id 或 name 为条件
    • ChromiumFramewait属性增加元素特征
    • 录屏功能 api 调整
  • 优化和修复
    • 修复同域ChromiumFrame没有及时关闭连接问题
    • 改进 cookies 处理逻辑
    • 自动用'127.0.0.1'替换'localhost'以提高速度
    • 浏览器路径可接受文件夹路径
    • 提高ChromiumFrame和查找元素稳定性
    • 修复get_local_storage()get_session_storage()获取所有数据时的问题
    • js 返回字典时能正确解析
    • 修复get_src()某情况下timeout失效问题
    • 修复Keys.ENTER没有正确回车问题

v3.0.30

06 Jan 03:27
bed8f83
Compare
Choose a tag to compare

推出WebPage,重新开发底层逻辑,摆脱对 selenium 的依赖,增强了功能,提升了运行效率。支持 chromium 内核的浏览器(如 chrome 和 edge)。比MixPage有以下优点:

  • 无 webdriver 特征,不会被网站识别
  • 无需为不同版本的浏览器下载不同的驱动
  • 运行速度更快
  • 可以跨 iframe 查找元素,无需切入切出
  • 把 iframe 看作普通元素,获取后可直接在其中查找元素,逻辑更清晰
  • 可以同时操作浏览器中的多个标签页,即使标签页为非激活状态
  • 可以直接读取浏览器缓存来保持图片,无需用 GUI 点击保存
  • 可以对整个网页截图,包括视口外的部分(90以上版本浏览器支持)

其它更新:

  • 增加ChromiumTabChromiumFrame类用于处理 tab 和 frame 元素
  • 新增与WebPage配合的动作链接ActionChains
  • 浏览器启动配置实现对插件的支持
  • 浏览器启动配置实现对experimental_optionsprefs属性支持
  • 用存根文件取代类型注解
  • 其它优化和问题修复

v2.7.0

02 Jun 01:26
2ca706c
Compare
Choose a tag to compare
  • DriverPage

    • 增加get_session_storage()、get_local_storage()、set_session_storage()、set_local_storage()、clean_cache()方法

    • run_cdp()的cmd_args参数改为**cmd_args

    • 关闭 driver 时会主动关闭 chromedriver.exe 的进程

  • 优化关闭浏览器进程逻辑

v2.5.7

20 Mar 15:35
1cf3b8c
Compare
Choose a tag to compare
  • 列表元素 select()、deselect()等方法添加timeout参数,可等待列表元素加载
  • 优化了对消息提示框的处理
  • drag() 和 drag_to() 不再检测是否拖拽成功,改成返回 None
  • DriverOptions 对象从父类继承的方法也支持链式操作
  • 其它优化和问题修复

V2.4.2

21 Jan 06:50
0c44828
Compare
Choose a tag to compare

v1.10.0

14 Apr 02:11
Compare
Choose a tag to compare
  • 优化启动浏览器的逻辑
  • 用debug模式启动时可读取启动参数
  • 完善select标签处理功能
  • MixPage类的to_iframe()改名为to_frame()
  • MixPage类的scroll_to()增加'half'方式,滚动半页
  • Drission类增加kill_browser()方法

v1.9.0

07 Feb 06:13
Compare
Choose a tag to compare
  • 元素增加click_at()方法,支持点击偏移量
  • download()支持重试
  • 元素input()允许接收组合键,如ctrl+a
  • 其它优化