pyppeteer实现自动输入账号、密码、验证码

您所在的位置:网站首页 pyppeteer弹窗按钮点击 pyppeteer实现自动输入账号、密码、验证码

pyppeteer实现自动输入账号、密码、验证码

2023-08-27 10:41| 来源: 网络整理| 查看: 265

网站自动登录 使用pyppeteer实现自动输入账号、密码 结合验证码识别,可实现自动登录,获取完整html数据

注: 验证码可调用另一篇随笔中的代码实现自动识别功能

import asyncio import requests from pyppeteer import launch width, height = 1366, 768 async def main(): # headless = False 为False:有头,True为无头 # userDataDir 设置当前网站的保存路径,下次登陆时可不用登陆 browser = await launch(headless=True, args=['--disable-infobars'], userDataDir='./b2b.139erp.com') # 申明一个page对象 page = await browser.newPage() # 浏览器设置宽高 await page.setViewport({'width': width, 'height': height}) # 要访问的网址 await page.goto('http://26617.b2b.139erp.com') # 用户名和密码 await page.type('#dhhm','此处为账号') await page.type('#password', '此处为密码') # 等待5秒获取验证码 await asyncio.sleep(5) # 定位验证码,保存到当前路径 yanzhengma = await page.waitForSelector('#imgVerify') await yanzhengma.screenshot({'path': 'yanzhengma.png'}) while True: v_code = input('请输入验证码:') if v_code: break await page.type('#edtSign', v_code) # 点击登陆 await page.click('#bt_login') await asyncio.sleep(3) # 关闭页面 如果return就不用关闭 # await page.close() # 返回cookie return await page.cookies() data_list = asyncio.get_event_loop().run_until_complete(main()) s = requests.Session() s.cookies.set(data_list[0]['name'], data_list[0]['value']) html = s.get(url='http://26617.b2b.139erp.com/blackweb/quoteList.action', headers={ "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:80.0) Gecko/20100101 Firefox/80.0"}).text # 此处已登陆成功 # 从html中获取数据 print(html)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3