fix
This commit is contained in:
parent
af03409400
commit
e0d531ad82
16
example2.js
16
example2.js
@ -1,21 +1,13 @@
|
||||
import { launch } from 'puppeteer';
|
||||
import 'dotenv/config.js'
|
||||
import { setLocalStorage } from './utils/userUtils.js';
|
||||
|
||||
(async () => {
|
||||
const browser = await launch({ headless: true, args: [`--window-size=1920,1080`], defaultViewport: { width: 1920, height: 1080 } });
|
||||
const page = await browser.newPage();
|
||||
await page.goto('https://dev-dmp.meiguanjia.net/login');
|
||||
await page.locator('#userName input').fill(process.env.ACCOUNT);
|
||||
await page.locator('#passWord input').fill(process.env.PASSWORD);
|
||||
await page.locator('[type="submit"]').click();
|
||||
|
||||
await page.waitForSelector('.arco-modal', { visible: true });
|
||||
await page.locator('.arco-list-content:first-child .role_box').click();
|
||||
|
||||
await page.waitForSelector('.arco-message .arco-message-content', { visible: true });
|
||||
const arcoMessage = await page.$eval('.arco-message .arco-message-content', node => node.innerHTML);
|
||||
console.log(arcoMessage);
|
||||
|
||||
setLocalStorage(page, 'user.json');
|
||||
await page.goto('https://dev-dmp.meiguanjia.net/report/businessData');
|
||||
|
||||
await page.waitForSelector('.menu-list-second');
|
||||
const childElements = await page.$$('.menu-list-second .menu-list-second-item');
|
||||
await new Promise(r => setTimeout(r, 1000));
|
||||
|
||||
15
uselogin.js
15
uselogin.js
@ -2,24 +2,15 @@ import { launch } from 'puppeteer';
|
||||
import fs from 'fs';
|
||||
import 'dotenv/config.js';
|
||||
|
||||
import { setLocalStorage } from './utils/userUtils.js';
|
||||
|
||||
(async () => {
|
||||
const browser = await launch({ headless: false, devtools: true, args: [`--window-size=1920,1080`], defaultViewport: { width: 1920, height: 1080 } });
|
||||
const page = await browser.newPage();
|
||||
await page.goto('https://dev-dmp.meiguanjia.net/login');
|
||||
|
||||
const file = 'user.json';//获取file
|
||||
const outputLocalStorge = fs.readFileSync(file, 'utf-8');
|
||||
let localStorageTest = JSON.parse(outputLocalStorge);
|
||||
await setLocalStorage(page, 'user.json');
|
||||
|
||||
|
||||
// 设置页面的localStorage
|
||||
await page.evaluateOnNewDocument(localStorageTest => {
|
||||
localStorage.clear();
|
||||
localStorage.setItem('merchant_access_token', localStorageTest.merchant_access_token);
|
||||
localStorage.setItem('merchant_refresh_token', localStorageTest.merchant_refresh_token);
|
||||
localStorage.setItem('merchant_login_data', localStorageTest.merchant_login_data);
|
||||
localStorage.setItem('merchant_metadata_data', localStorageTest.merchant_metadata_data);
|
||||
}, localStorageTest);
|
||||
await page.goto('https://dev-dmp.meiguanjia.net/report/businessData');
|
||||
|
||||
await browser.close();
|
||||
|
||||
20
utils/userUtils.js
Normal file
20
utils/userUtils.js
Normal file
@ -0,0 +1,20 @@
|
||||
import fs from 'fs';
|
||||
|
||||
/**
|
||||
* 设置页面的LocalStorage
|
||||
* @param {*} page
|
||||
* @param {String} file 用户信息
|
||||
*/
|
||||
export async function setLocalStorage(page, file) {
|
||||
const outputLocalStorge = fs.readFileSync(file, 'utf-8');
|
||||
let localStorageTest = JSON.parse(outputLocalStorge);
|
||||
|
||||
// 设置页面的localStorage
|
||||
await page.evaluateOnNewDocument(localStorageTest => {
|
||||
localStorage.clear();
|
||||
localStorage.setItem('merchant_access_token', localStorageTest.merchant_access_token);
|
||||
localStorage.setItem('merchant_refresh_token', localStorageTest.merchant_refresh_token);
|
||||
localStorage.setItem('merchant_login_data', localStorageTest.merchant_login_data);
|
||||
localStorage.setItem('merchant_metadata_data', localStorageTest.merchant_metadata_data);
|
||||
}, localStorageTest);
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user