pyppeteer 常规使用方法总结

pyppeteer github 地址:https://github.com/miyakogi/pyppeteer

pyppeteer 英文文档地址:https://miyakogi.github.io/pyppeteer/
pyppeteer 官方文档 API Reference :https://miyakogi.github.io/pyppeteer/reference.html

puppeteer( Nodejs 版 selenium )快速入门:https://blog.csdn.net/freeking101/article/details/91542887

简介在这里我就不讲了,大家可以自行在网上搜索。这里主要总结一些常规操作

1.创建空页面,并对新的页面进行调度

#这里launch 里面的参数是一定要填写的,可避免一些反爬
browser = await launch(headless=False, args=['--disable-infobars'], dumpio=True)
page = await browser.newPage()
await page.goto(url)

2.通过选择器进行操作

#文本框输入
def input_time_random():
    return random.randint(150, 351)
#ume --- 具体的值
await page.type(选择器信息,具体的值,休眠时间)
await page.type(‘#TPL_username_1’, ume, {'delay': input_time_random()})
#点击
await page.click('#J_SubmitStatic')

3.通过xpath 定位/操作

#通过xpath 实现点击操作
click_handle = await page.xpath("//button[@class='fm-button fm-submit password-login']")
await click_handle[0].click()
#获取text 文本信息
await item.getProperty("textContent")).jsonValue()

4.找到所以iframe 并指定切换

frame_list=page.frames
#通过判断查找所需
title = await frame[1].title()

5.等待上一步页面加载完,在进行下一步操作

 await asyncio.wait([
    determine_button[0].click(),
      page2.waitForNavigation(),
  ])

6.关闭整个页面

async def page_close(browser):
for _page in await browser.pages():
     await _page.close()
 await browser.close()

7.查看获取到的所有页面

#这里可以拿到所有的页面,通过索引去筛查
page_list = await browser.pages()
await page_list[-1].content() 

你可能感兴趣的:(python)