面向未来的chromedp

因为 Python 下使用 webdriver 注入 cookie 出现问题,所以尝试寻求解决方案。最先想到的是利用 Java 的框架,因为公司里其它人使用 Java 可以成功。但在看了一点 Java 代码之后,这个念头突然就弱了下来。实在太复杂了。

那么,还能使用什么呢?自己还会一点 Go ,所以去搜 Go 下驱动浏览器的解决方案。还真找到了一个。这就是 chromedp。

chromedp 和传统的 webdriver 不一样,它是利用 Go 语言实现的 Chrome Debug Protocol,没有其它依赖,直接操作浏览器。

其实,我对 CDP 一无所知。秉承着勇于探索的精神,我花费了一晚上和一上午来研究 chromedp 怎么用。没有文档,只能通过 API 接口和例子以及源代码来艰难建立感觉和概念。

在胡乱冲撞源代码并暴力测试了几个小例子之后,终于有了一点点概念和感觉。

cdp 能干的事情很多,可以完全替代 webdriver:

我尝试成功的事情:

chromedp 挺有趣,也很强大,目前而言,学习成本有些高,如果时机合适,倒是不妨一试。


不知是该恭喜,还是该怎样,总之阅读到该文的,你是第 人。每一次刷新,都是不同的自己。