Pyppeteer学习

上手体验

import asyncio
from pyppeteer import launch
from pyquery import PyQuery as pq


async def main():
    browser = await launch()
    page = await browser.newPage()
    await page.goto('https://dynamic5.scrape.cuiqingcai.com/')
    await page.waitForSelector('.item .name')
    doc = pq(await page.content())
    names = [item.text() for item in doc('.item .name').items()]
    print('Names:', names)
    await browser.close()


asyncio.get_event_loop().run_until_complete(main())

Names: ['R数据科学实战:工具详解与案例分析', 'Greenplum:从大数据战略到实现', '数据密集型应用系统设计'
, '', 'Streaming Systems', '温暖和百感交集的旅程', '解忧杂货店', '白夜行', '活着', '在细雨中呼喊', 
'霍乱时期的爱情', '活着', '你当像鸟飞往你的山', '百年孤独', '呼吸', '红楼梦', '82年生的金智英', 
'平凡的世界(全三部)']

调用截图

import asyncio
from pyppeteer import launch
from pyquery import PyQuery as pq


async def main():
    browser = await launch()
    page = await browser.newPage()
    await page.setViewport({'width':1366,'height':768})
    await page.goto('https://dynamic5.scrape.cuiqingcai.com/')
    await page.waitForSelector('.item .name')
    await asyncio.sleep(2)
    await page.screenshot(path='example.png')
    #调用了evaluate方法 执行一些JavaScript ,传入的是一个函数。
    #使用return 方法后返回了网页的宽高、像素大小比率三个值
    dimensions=await page.evaluate('''()=>{
        return{
            width:document.documentElement.clientWidth,
            height:document.documentElement.clientHeight,
            deviceScaleFactor:window.devicePixelRatio,
        }
    }''')
    print(dimensions)
    await browser.close()


asyncio.get_event_loop().run_until_complete(main())

在这里插入图片描述
在这里插入图片描述

不显示浏览器

在这里插入图片描述

设置浏览器为无痕模式 和 取消自动化提示

在这里插入图片描述

隐藏webdriver

在这里插入图片描述

保存登录信息

在这里插入图片描述

Page cookie

在这里插入图片描述

打开开发者工具

在这里插入图片描述

Page 选择器

在这里插入图片描述

输入文本

在这里插入图片描述

点击操作

在这里插入图片描述

切换选项卡

在这里插入图片描述

很多方法在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值