playwright 使用本地保存的 cookie 登录小红书

  1. 打开小红书网页版,手动登录,查看请求头的 cookies,注意不要关闭浏览器,浏览器一关 cookie 就失效了!

  2. 复制下来,存到 cookies.txt 里头
    在这里插入图片描述

  3. 编辑登录脚本 main.py

    from playwright.sync_api import sync_playwright
    
    with sync_playwright() as playwright:
        browser = playwright.chromium.launch(headless=False)
        context = browser.new_context()
    
        # 读取保存的 Cookie 文件
        cookies = []
        with open('cookies.txt', 'r') as file:  # 替换为你保存 Cookie 的文件路径
            lines = file.readlines()
            for line in lines:
                name, value = line.strip().split('=', 1)
                cookies.append({'name': name, 'value': value, 'domain':'.xiaohongshu.com', 'path': '/', 'expires': -1 })
    
        # 添加 Cookie 到浏览器上下文
        context.add_cookies(cookies)
    
        # 创建一个新页面,并访问小红书探索页面
        page = context.new_page()
        page.goto('https://www.xiaohongshu.com/explore')
    
        # 获取页面标题并打印出来
        title = page.title()
        print('页面标题:', title)
    
        page.pause()
    
        browser.close()
    
  4. 运行,可以看到登录成功
    在这里插入图片描述

Playwright是一个开源的自动化测试库,主要用于浏览器自动化,包括Chrome、Firefox和Webkit等。如果你想要使用Playwright进行基于Cookie登录操作,可以按照以下步骤进行: 1. **安装Playwright**: 首先,你需要在项目中安装Playwright,通过npm或yarn添加依赖: ```bash npm install playwright # 或者 yarn add playwright ``` 2. **初始化浏览器并设置Cookie**: 使用`playwright`创建一个新的浏览器实例,并设置或获取Cookie。例如,登录成功后可能会有响应头包含Set-Cookie信息: ```javascript const { chromium } = require('playwright'); async function loginWithCookie(url, username, password) { const browser = await chromium.launch(); const page = await browser.newPage(); // 登录过程... await page.goto(url); await page.fill('#username', username); await page.fill('#password', password); await page.click('#login-button'); // 获取或设置Cookie const responseCookies = await page.cookies(); // 如果已登录,这将返回新的Cookie if (cookies.length > 0) { await page.setCookie(...cookies); // 将新Cookie设置到页面 } // 等待登录状态切换,或者检查特定登录成功的URL路径变化 await page.waitForSelector('.is-login-success'); // 关闭浏览器 await browser.close(); } ``` 3. **调用登录函数**: 调用`loginWithCookie`函数,传入目标网站地址、用户名和密码。 注意,在实际使用时,你需要处理登录过程中的各种异常,并确保处理登录状态的验证。此外,上述示例假设网页上存在对应的输入框ID和登录按钮,实际页面结构需根据实际情况调整。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值