快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

pythonpyppeteer使用笔记

pyppeteer -- python版本的puppeteer,一个强大的chronium headless浏览器API

在福海等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站制作、成都网站设计 网站设计制作按需求定制开发,公司网站建设,企业网站建设,品牌网站设计,全网营销推广,外贸网站制作,福海网站建设费用合理。

最近搞天猫用了一波儿,记录一下。

先上文档: https://miyakogi.github.io/pyppeteer/

举个最简单的例子入门一下:

比如打开百度,然后截图

python pyppeteer使用笔记

下面说一些小技巧:

1、启动参数

python pyppeteer使用笔记

注意:同一个用户目录(userDataDir)不能被两个chrome进程使用,如果你要多开,记得分别指定用户目录。否则会报编码错误。

2、设置viewport

自动获取当前屏幕大小并设置viewport

python pyppeteer使用笔记

3、导出或加载cookie

python pyppeteer使用笔记

4、选择器

让人极度舒适的一个特性:

使用 page.querySelector如果没有找到指定的对象,则返回None,而不是抛出异常。不管规范不规范,反正比selenium爽多了。

5、hook

在页面开始加载前注入js代码,例如修改掉webdriver属性,让天猫检测不到

python pyppeteer使用笔记

6、关于各种事件的isTrusted

这个js事件属性,用js是无法伪造的,但是用pyppeteer发生的各种操作所触发的事件,是完全真实的,这个归功于CDP吧。

7、卡死

如果在操作过程中不小心点击了某个a标签,导致浏览器新打开了一个标签页,而你的代码还在傻乎乎的使用之前的page对象做操作的时候,整个进程就卡住了

没有超时、没有异常、就是完全的不知道在干啥

当你把新开的标签页手动关闭后,一切就恢复原样。

tips:

避免这种情况的发生,其实也很简单,就是在每个可能误操作点击导致新开标签页的行为后面都强制关闭一下其他标签页:

比如:

python pyppeteer使用笔记


当前文章:pythonpyppeteer使用笔记
网页URL:http://6mz.cn/article/pdhcos.html

其他资讯