{"id":24387175,"url":"https://github.com/g1879/drissionpage","last_synced_at":"2025-05-12T05:25:03.496Z","repository":{"id":99542820,"uuid":"265810847","full_name":"g1879/DrissionPage","owner":"g1879","description":"Python based web automation tool. Powerful and elegant.","archived":false,"fork":false,"pushed_at":"2025-03-25T03:20:58.000Z","size":3656,"stargazers_count":9701,"open_issues_count":194,"forks_count":881,"subscribers_count":152,"default_branch":"master","last_synced_at":"2025-05-12T04:03:59.307Z","etag":null,"topics":["automation-framework","python","web-automation"],"latest_commit_sha":null,"homepage":"https://DrissionPage.cn/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/g1879.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":null}},"created_at":"2020-05-21T09:43:59.000Z","updated_at":"2025-05-12T03:35:08.000Z","dependencies_parsed_at":"2023-04-15T04:18:54.922Z","dependency_job_id":"7145d578-f1f9-469f-b265-f6d36413c60e","html_url":"https://github.com/g1879/DrissionPage","commit_stats":null,"previous_names":[],"tags_count":45,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/g1879%2FDrissionPage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/g1879%2FDrissionPage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/g1879%2FDrissionPage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/g1879%2FDrissionPage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/g1879","download_url":"https://codeload.github.com/g1879/DrissionPage/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253680058,"owners_count":21946502,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation-framework","python","web-automation"],"created_at":"2025-01-19T12:22:15.577Z","updated_at":"2025-05-12T05:25:03.475Z","avatar_url":"https://github.com/g1879.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ✨️ 概述\r\n\r\nDrissionPage 是一个基于 python 的网页自动化工具。\r\n\r\n它既能控制浏览器，也能收发数据包，还能把两者合而为一。\r\n\r\n可兼顾浏览器自动化的便利性和 requests 的高效率。\r\n\r\n它功能强大，内置无数人性化设计和便捷功能。\r\n\r\n它的语法简洁而优雅，代码量少，对新手友好。\r\n\r\n---\r\n\r\n官方网站：[https://DrissionPage.cn](https://drissionpage.cn)\r\n\r\n项目地址：[gitee](https://gitee.com/g1879/DrissionPage)    |    [github](https://github.com/g1879/DrissionPage)     |    [gitcode](https://gitcode.com/g1879/DrissionPage) \r\n\r\n您的星星是对我最大的支持💖\r\n\r\n--- \r\n\r\n支持系统：Windows、Linux、Mac\r\n\r\npython 版本：3.6 及以上\r\n\r\n支持浏览器：Chromium 内核浏览器(如 Chrome 和 Edge)，electron 应用\r\n\r\n---\r\n\r\n# 🛠 如何使用\r\n\r\n**📖 使用文档：**  [点击查看](https://DrissionPage.cn)\r\n\r\n**交流 QQ 群：**  见使用文档\r\n\r\n![](https://drissionpage.cn/codes.jpg)\r\n\r\n---\r\n\r\n# 💡 理念\r\n\r\n简洁而强大！\r\n\r\n--- \r\n\r\n# ☀️ 特性和亮点\r\n\r\n作者经过长期实践，踩过无数坑，总结出的经验全写到这个库里了。\r\n\r\n## 🎇 强大的自研内核\r\n\r\n本库采用全自研的内核，内置无数实用功能，对常用功能作了整合和优化，对比 selenium，有以下优点：\r\n\r\n- 不基于 webdriver\r\n- 无需为不同版本的浏览器下载不同的驱动\r\n- 运行速度更快\r\n- 可以跨 iframe 查找元素，无需切入切出\r\n- 把 iframe 看作普通元素，逻辑更清晰\r\n- 可同时操作多个标签页，无需切换\r\n- 可以直接读取浏览器缓存保存图片，无需用 GUI 点击另存\r\n- 可以对整个网页截图，包括视口外的部分\r\n- 可处理非`open`状态的 shadow-root\r\n\r\n## 🎇 亮点功能\r\n\r\n除了以上优点，本库还内置了无数人性化设计。\r\n\r\n- 极简的定位语法，查找元素更加容易\r\n- 集成大量常用功能，代码更优雅，功能强大稳定\r\n- 无处不在的等待和自动重试，使不稳定的网络变得易于控制，程序更稳定，编写更省心\r\n- 提供强大的下载工具，操作浏览器时也能享受快捷可靠的下载功能\r\n- 允许反复使用已经打开的浏览器，无需每次运行从头启动浏览器，调试方便\r\n- 使用 ini 文件保存常用配置，自动调用，提供便捷的设置，远离繁杂的配置项\r\n- 内置 lxml 作为解析引擎，解析速度成几个数量级提升\r\n- 使用 POM 模式封装，可直接用于测试，便于扩展\r\n- 高度集成的便利功能，从每个细节中体现\r\n- 还有很多细节，这里不一一列举，欢迎实际使用中体验：D\r\n\r\n--- \r\n\r\n# 📝 使用条款\r\n\r\n允许任何人以个人身份使用或分发本项目源代码，但仅限于学习和合法非盈利目的。\r\n个人或组织如未获得版权持有人授权，不得将本项目以源代码或二进制形式用于商业行为。\r\n\r\n使用本项目需满足以下条款，如使用过程中出现违反任意一项条款的情形，授权自动失效。\r\n- 禁止将DrissionPage应用到任何可能违反当地法律规定和道德约束的项目中\r\n- 禁止将DrissionPage用于任何可能有损他人利益的项目中\r\n- 禁止将DrissionPage用于攻击与骚扰行为\r\n- 遵守Robots协议，禁止将DrissionPage用于采集法律或系统Robots协议不允许的数据\r\n\r\n使用DrissionPage发生的一切行为均由使用人自行负责。\r\n因使用DrissionPage进行任何行为所产生的一切纠纷及后果均与版权持有人无关，\r\n版权持有人不承担任何使用DrissionPage带来的风险和损失。\r\n版权持有人不对DrissionPage可能存在的缺陷导致的任何损失负任何责任。\r\n\r\n---  \r\n\r\n# ☕ 请我喝咖啡\r\n\r\n作者是个人开发者，开发和写文档工作量较为繁重。\r\n\r\n如果本项目对您有所帮助，不妨打赏一下作者 ：）\r\n\r\n![](https://drissionpage.cn/code2.jpg)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fg1879%2Fdrissionpage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fg1879%2Fdrissionpage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fg1879%2Fdrissionpage/lists"}