iml*_*ode 6 node.js serverless-framework puppeteer
npm install chrome-aws-lambda我的代码在本地运行时工作正常,我在部署之前安装了该模块,并尝试chmod -R +r node_modules/以防它是读取权限错误,但仍然没有运气。
我的 handler.js 代码:
'use strict';
const {getArrayOfPages} = require("./utils");
const creds = require("./creds.json");
module.exports.hello = async (event, context) => {
try {
var browserendpoint = await getArrayOfPages(creds.username, creds.password)
console.log("DATA: " + browserendpoint)
}
catch(error) {
// Code that handles any potential errors
console.log(error)
}
}
Run Code Online (Sandbox Code Playgroud)
我的 getArrayOfPages.js 代码:
const sign_in = 'www.example.com/';
const chromium = require('chrome-aws-lambda')
module.exports = async function (username, password) {
try {
browser = await chromium.puppeteer.launch({
args: chromium.args,
defaultViewport: chromium.defaultViewport,
executablePath: await chromium.executablePath,
headless: chromium.headless,
slowMo: 250, // slow down by 250ms
userDataDir: "/tmp/" //save session data/cookies to be shared between lambda functions
});
const endpoint = await browser.wsEndpoint();
const page = await browser.newPage();
await page.goto(sign_in, { waitUntil: 'networkidle0' })
// code to login here
await browser.disconnect()
return endpoint
}
catch (error) {
// Code that handles any potential errors
console.log(error)
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1322 次 |
| 最近记录: |