launch使用Pyppeteer的第一步就是启动浏览器 , 就是相当于我们点击桌面上的浏览器图标一样 , 把它运行起来 。用Pyppeteer完成同样的操作 , 只需要调用launch方法就行了 。
先看一下launch方法的API定义:
pyppeteer.launcher.launch(options: dict = None, **kwargs)
从官方文档和定义当中我们可以看到它处于launcher模块中 , 返回一个Brower对象 , 从源码中可以看出这个方法是通过async修饰的 , 所以调用的时候需要使用await 。
下面我们看看它的参数:
- ignoreHTTPSErrors(bool):是否要忽略HTTPS的错误 , 默认是False 。
- headless(bool):是否启用Headless模式 , 即无界面模式 , 如果devtools这个参数是True , 那么该参数就会被设置为False , 否则为True , 默认是开启无界面模式 。
- executablePath(str):可执行文件的路径 , 如果指定之后就不需要使用默认的Chromium了 , 可以指定为已有的Chrome或者Chromium 。
- slowMo(int|float):通过传入指定的时间 , 可以减缓Pyppeteer的一些模拟操作 。
- args(List[str]):在执行过程中可以传入的额外参数 。
- ignoreDefaultArgs(bool):不使用Pyppeteer的默认参数 , 如果使用了这个参数 , 最好通过args参数来设定一些参数 , 否则可能会出现一些意想不到的问题 。慎用此参数 。
- handleSIGINT(bool):是否享有SIGINT信号 , 也就是用Ctrl+C来关闭浏览器 , 默认是True 。
- handleSIGTERM(bool):是否享有SIGTERM信号 , 一般是kill命令 , 默认为True 。
- handleSIGHUP (bool):是否响应SIGHUP信号 , 即挂起信号 , 比如终端退出操作 , 默认是 True 。
- dumpio (bool):是否将 Pyppeteer 的输出内容传给 process.stdout 和 process.stderr 对象 , 默认是 False 。
- userDataDir (str):即用户数据文件夹 , 即可以保留一些个性化配置和操作记录 。
- env (dict):环境变量 , 可以通过字典形式传入 。
- devtools (bool):是否为每一个页面自动开启调试工具 , 默认是 False 。如果这个参数设置为 True , 那么 headless 参数就会无效 , 会被强制设置为 False 。
- logLevel (int|str):日志级别 , 默认和 root logger 对象的级别相同 。
- autoClose (bool):当一些命令执行完之后 , 是否自动关闭浏览器 , 默认是 True 。
- loop (asyncio.AbstractEventLoop):事件循环对象 。
- 无头模式
import asynciofrom pyppeteer import launchasync def main():await launch(headless=False)await asyncio.sleep(100)asyncio.get_event_loop().run_until_complete(main())
运行之后看不到任何控制台输出 , 但是这时候就会出现一个空白的 Chromium 界面了:文章插图
这个时候我们看到在任务栏中显示了一个蓝色Chrome图标 。
- 调试模式
import asynciofrom pyppeteer import launchasync def main():browser = await launch(devtools=True)page = await browser.newPage()await page.goto('https://www.baidu.com')await asyncio.sleep(100)asyncio.get_event_loop().run_until_complete(main())
如果devtools这个参数设置为True , 那么headless就不起作用了 , 界面始终会显示出来 。文章插图
- 禁用提示条
browser = await launch(headless=False, args=['--disable-infobars'])
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 破了这几种爬虫加密算法后,我的路更近了「JS逆向3」
- 「Charles」抓包神器
- Kali技术分享 网站镜像神器Httrack安装及使用
- 硬盘检测修复神器:硬盘哨兵HardDisk Sentinel
- 快速、轻巧,强大!3 个下载神器,分分钟打造 NAS 下载机
- 黑客必用神器“msf”的post模块实战讲解
- 在安卓手机搭建kali环境,手机变成便携式渗透神器
- Python自带爬虫库urllib使用大全
- 免洗护发素可携带的护发神器
- 凭借这5步,我30分钟学会了Python爬虫