serverless-chrome

? Run headless Chrome/Chromium on AWS Lambda (maybe Azure, & GCP later)

Github星跟蹤圖

serverless-chrome

Serverless Chrome contains everything you need to get started running headless
Chrome on AWS Lambda (possibly Azure and GCP Functions soon).

The aim of this project is to provide the scaffolding for using Headless Chrome
during a serverless function invocation. Serverless Chrome takes care of
building and bundling the Chrome binaries and making sure Chrome is running when
your serverless function executes. In addition, this project also provides a few
example services for common patterns (e.g. taking a screenshot of a page,
printing to PDF, some scraping, etc.)

Why? Because it's neat. It also opens up interesting possibilities for using the
Chrome DevTools Protocol
(and tools like Chromeless or
Puppeteer) in serverless
architectures and doing testing/CI, web-scraping, pre-rendering, etc.

CircleCI
David
David
GitHub release

Contents

  1. Quick Start
  2. The Project
  3. Examples
  4. Documentation & Resources
    1. Building Headless Chrome/Chromium
  5. Testing
  6. Articles & Tutorials
  7. Troubleshooting
  8. Roadmap
  9. Projects & Companies using serverless-chrome
  10. Change log
  11. Contributing
  12. Prior Art
  13. License

Quick Start

"Bla bla bla! I just want to start coding!" No problem:

Using AWS Lambda, the quickest way to get started is with the
Serverless-framework CLI.

First, install serverless globally (npm install -g serverless) and then:

serverless create -u https://github.com/adieuadieu/serverless-chrome/tree/master/examples/serverless-framework/aws

Then, you must configure your AWS credentials either by defining
AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environmental variables, or
using an AWS profile. You can read more about this on the
Serverless Credentials Guide.

In short, either:

export AWS_PROFILE=<your-profile-name>

or

export AWS_ACCESS_KEY_ID=<your-key-here>
export AWS_SECRET_ACCESS_KEY=<your-secret-key-here>

Then, to deploy the service and all of its functions:

npm run deploy

Further details are available in the
Serverless Lambda example.

The Project

This project contains:

Examples

A collection of example functions for different providers and frameworks.

Serverless-framework

Documentation & Resources

Building Headless Chrome/Chromium

Testing

Test with npm test. Each package also contains it's own integration tests
which can be run with npm run test:integration.

Articles & Tutorials

A collection of articles and tutorials written by others on using serverless-chrome

Troubleshooting

Roadmap

1.1

  1. Support for Google Cloud Functions
  2. Example for Apex
  3. Example for Claudia.js

1.2

  1. DOM manipulation and scraping example handler

Future

  1. Support for Azure Functions
  2. Headless Firefox

Projects & Companies using serverless-chrome

Tell us about your project on the
Wiki!

Change log

See the CHANGELOG

Contributing

OMG. Yes. Plz, halp meeee.

Prior Art

This project was inspired in various ways by the following projects:

License

serverless-chrome © Marco Lüthy. Released under the MIT license.
Authored and maintained by Marco Lüthy with help from contributors.

github.com/adieuadieu · GitHub @adieuadieu · Twitter @adieuadieu · Medium @marco.luethy

主要指標

概覽
名稱與所有者adieuadieu/serverless-chrome
主編程語言JavaScript
編程語言JavaScript (語言數: 5)
平台
許可證MIT License
所有者活动
創建於2017-03-11 07:28:54
推送於2022-12-08 22:39:37
最后一次提交2021-09-15 11:16:27
發布數46
最新版本名稱v1.0.0-70 (發布於 )
第一版名稱v0.5.0 (發布於 )
用户参与
星數2.9k
關注者數42
派生數281
提交數721
已啟用問題?
問題數222
打開的問題數35
拉請求數60
打開的拉請求數32
關閉的拉請求數37
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?