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 { launch } from 'puppeteer';
|
||||||
import 'dotenv/config.js'
|
import 'dotenv/config.js'
|
||||||
|
import { setLocalStorage } from './utils/userUtils.js';
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
const browser = await launch({ headless: true, args: [`--window-size=1920,1080`], defaultViewport: { width: 1920, height: 1080 } });
|
const browser = await launch({ headless: true, args: [`--window-size=1920,1080`], defaultViewport: { width: 1920, height: 1080 } });
|
||||||
const page = await browser.newPage();
|
const page = await browser.newPage();
|
||||||
await page.goto('https://dev-dmp.meiguanjia.net/login');
|
setLocalStorage(page, 'user.json');
|
||||||
await page.locator('#userName input').fill(process.env.ACCOUNT);
|
await page.goto('https://dev-dmp.meiguanjia.net/report/businessData');
|
||||||
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);
|
|
||||||
|
|
||||||
await page.waitForSelector('.menu-list-second');
|
await page.waitForSelector('.menu-list-second');
|
||||||
const childElements = await page.$$('.menu-list-second .menu-list-second-item');
|
const childElements = await page.$$('.menu-list-second .menu-list-second-item');
|
||||||
await new Promise(r => setTimeout(r, 1000));
|
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 fs from 'fs';
|
||||||
import 'dotenv/config.js';
|
import 'dotenv/config.js';
|
||||||
|
|
||||||
|
import { setLocalStorage } from './utils/userUtils.js';
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
const browser = await launch({ headless: false, devtools: true, args: [`--window-size=1920,1080`], defaultViewport: { width: 1920, height: 1080 } });
|
const browser = await launch({ headless: false, devtools: true, args: [`--window-size=1920,1080`], defaultViewport: { width: 1920, height: 1080 } });
|
||||||
const page = await browser.newPage();
|
const page = await browser.newPage();
|
||||||
await page.goto('https://dev-dmp.meiguanjia.net/login');
|
await page.goto('https://dev-dmp.meiguanjia.net/login');
|
||||||
|
|
||||||
const file = 'user.json';//获取file
|
await setLocalStorage(page, 'user.json');
|
||||||
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);
|
|
||||||
await page.goto('https://dev-dmp.meiguanjia.net/report/businessData');
|
await page.goto('https://dev-dmp.meiguanjia.net/report/businessData');
|
||||||
|
|
||||||
await browser.close();
|
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