pyppeteer安装及简单命令|打开浏览器,设置浏览器界面,xpath 匹配目标,获得 cookies,关闭浏览器,获得 text,获得 href 属性

发表时间:2020-02-22

官方文档

安装

# 需要 pyppeteer.chromium_downloader pip install websockets==7.0 # 默认安装driver路径 C:\Users\xxx\AppData\Local\pyppeteer\pyppeteer\local-chromium\chromdriver # 匹配版本 pyppeteer == 0.0.25 chromdriver == 69.0.3494.0

运行

  • 运行第一次时,会自动下载 webdriver
  • 使用,函数必须使用 async, 定义为协程函数
  • 启动函数
# 必须使用循环事件 loop = asyncio.get_event_loop() # 启动函数 task = [] loop.run_until_complete(asyncio.wait(task))
  • 打开浏览器
brower = await launch(self.options) # 当pyppeteer通过launch()或 连接到chrome时,会创建一个Browser对象connect()
  • 打开一个新得页面
page = await self.brower.newPage()
  • 设置浏览器界面
page.setViewport(viewport={'width': 1280, 'height': 800})
  • 设置浏览器 UA
page.setUserAgent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36")
  • 跳转到目标页面
await self.page.goto(self.login_url)
  • xpath 匹配目标
result = await self.page.xpath("//iframe[@id='J_loginIframe']/@src")
  • 返回
# 为list,如果需要提取信息,或点击,需要获取该 list 中得某一个元素进行 url = await (await target[0].getProperty('textContent')).jsonValue()
  • 提取
# xpath 匹配目标结果 await self.page.type('#TPL_username_1', self.username, {'delay': self.InputTimeRandom() - 50})
  • 输入操作
使用 css 查找器 '#TPL_u sername_1' css 匹配 self.username
  • 设置间隔,避免输入太快
{'delay': self.InputTimeRandom() - 50}
  • 获得 cookies
await page.cookies()
  • 获得页面
await page.content()
  • 获得标题
await page.title()
  • 关闭浏览器
await browser.close()
  • 解析,获得 text
await (await item[0].getProperty('textContent')).jsonValue()
  • 获得 href 属性
await (await item[0].getProperty('href')).jsonValue()

文章来源互联网,尊重作者原创,如有侵权,请联系管理员删除。邮箱:417803890@qq.com / QQ:417803890


Python Free

邮箱:417803890@qq.com
QQ:417803890

皖ICP备19001818号
© 2019 copyright www.pythonf.cn - All rights reserved

微信扫一扫关注公众号:

联系方式

Python Free