V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Ginson
V2EX  ›  Python

尝试用 Chrome Devtools Protocol 代替 selenium、pyppeteer 进行爬虫任务,应该如何学习?

  •  
  •   Ginson · 2021-01-29 14:39:00 +08:00 · 2566 次点击
    这是一个创建于 1423 天前的主题,其中的信息可能已经有所发展或是发生改变。
    selenium 占用大,pyppeteer 长期不更新,因此很多人推荐用 Chrome Devtools Protocol 来代替这两个库进行爬虫任务。想请教下大家要怎么快速上手 cpd 的相关知识呢

    搜索学习资料的时候发现相关信息不多,看某位大佬写的《深入浅出 CDP (Chrome DevTools Protocol)》 https://clericpy.github.io/blog/posts/20200114151137/ ,但感觉还是很懵。
    第 1 条附言  ·  2021-02-01 10:00:32 +08:00
    我一直关注的 miyakogi / pyppeteer 这个项目,没发现转到组织维护了,抱歉
    3 条回复    2021-02-01 10:04:11 +08:00
    gzlock
        1
    gzlock  
       2021-01-29 18:11:36 +08:00
    https://i.loli.net/2021/01/29/HXiUpy1LkA25F9D.png
    有在维护的啊,pyppeteer/pyppeteer 在 21 天前有 updated

    https://pypi.org/project/pyppeteer/#history
    pip 上的 pyppeteer 在 1 月 8 号还发布了 0.2.5 版本呢

    跟楼主所说的“长期不更新”的情况相悖,这中间是不是有什么误会
    ClericPy
        2
    ClericPy  
       2021-01-29 20:53:37 +08:00   ❤️ 4
    https://github.com/pyppeteer/pyppeteerhttps://github.com/miyakogi/pyppeteer 个人项目迁移到组织维护了, 实际上是保持更新的, 已经基本算是准官方的 Google puppeteer Python 移植了, 社区维护热度比较高, 三周前有代码更新, 没有长期不更新一说

    与之相对应的主流选择就是微软从 https://github.com/microsoft/playwright 移植过来的 https://github.com/microsoft/playwright-python playwright 是微软开发的类似 puppeteer 的一套脚手架, 除了 Blink 内核的浏览器, 好像还有火狐等其他内核

    以上两者都是正规军入场生态比较完善的选择

    selenium 拿来写爬虫是因为培训班软文较多, 看看就算了

    至于楼主提到的博客, 实际上就是应付面试出的快餐产物, 里面提到的 ichrome 其实是在上班时候自己摸索 CDP (2017 年也没有轮子可选) 做过的代码重构成框架来用的, 目前在新工作里面上生产环境发现了很多 bug, 虽然基本都修复了, 但是底层架构的设计层面都不成熟, 目前拿来做一些不太复杂的小项目没什么问题

    总之一句话概括 CDP 就是通过 Websocket 给开启远程调试接口的 Chrome 进程发送指令进行操作标签的协议, 所有返回结果或者事件也可以在 WS 里收到, 至于用哪个轮子都无所谓
    Ginson
        3
    Ginson  
    OP
       2021-02-01 10:04:11 +08:00
    @ClericPy 感谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2734 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 86ms · UTC 11:36 · PVG 19:36 · LAX 03:36 · JFK 06:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.