mirror of
https://github.com/puppeteer/puppeteer
synced 2024-06-14 14:02:48 +00:00
2 lines
3.6 KiB
JavaScript
2 lines
3.6 KiB
JavaScript
/*! For license information please see 5a384950.05b8471e.js.LICENSE.txt */
|
|
"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[94586],{16134:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>p,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var r=n(85893),o=n(11151);const s={},i="What is Puppeteer?",a={id:"guides/what-is-puppeteer",title:"What is Puppeteer?",description:"Puppeteer is a Node.js library which provides a high-level API to control",source:"@site/../docs/guides/what-is-puppeteer.md",sourceDirName:"guides",slug:"/guides/what-is-puppeteer",permalink:"/next/guides/what-is-puppeteer",draft:!1,unlisted:!1,tags:[],version:"current",frontMatter:{},sidebar:"docs",previous:{title:"Introduction",permalink:"/next/category/introduction"},next:{title:"Installation",permalink:"/next/guides/installation"}},l={},c=[];function u(e){const t={a:"a",h1:"h1",li:"li",p:"p",ul:"ul",...(0,o.a)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.h1,{id:"what-is-puppeteer",children:"What is Puppeteer?"}),"\n",(0,r.jsxs)(t.p,{children:["Puppeteer is a Node.js library which provides a high-level API to control\nChrome/Chromium over the\n",(0,r.jsx)(t.a,{href:"https://chromedevtools.github.io/devtools-protocol/",children:"DevTools Protocol"}),".\nPuppeteer runs in\n",(0,r.jsx)(t.a,{href:"https://developer.chrome.com/docs/chromium/new-headless/",children:"headless"}),'\nmode by default, but can be configured to run in full ("headful")\nChrome/Chromium.']}),"\n",(0,r.jsx)(t.h1,{id:"features",children:"Features"}),"\n",(0,r.jsx)(t.p,{children:"Most things that you can do manually in the browser can be done using Puppeteer!\nHere are a few examples to get you started:"}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsx)(t.li,{children:"Automate form submission, UI testing, keyboard input, etc."}),"\n",(0,r.jsx)(t.li,{children:"Create an automated testing environment using the latest JavaScript and\nbrowser features."}),"\n",(0,r.jsxs)(t.li,{children:["Capture a\n",(0,r.jsx)(t.a,{href:"https://developer.chrome.com/docs/devtools/performance/reference",children:"timeline trace"}),"\nof your site to help diagnose performance issues."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.a,{href:"https://pptr.dev/guides/chrome-extensions",children:"Test Chrome Extensions"}),"."]}),"\n",(0,r.jsx)(t.li,{children:"Generate screenshots and PDFs of pages."}),"\n",(0,r.jsx)(t.li,{children:'Crawl a SPA (Single-Page Application) and generate pre-rendered content (i.e.\n"SSR" (Server-Side Rendering)).'}),"\n"]})]})}function p(e={}){const{wrapper:t}={...(0,o.a)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(u,{...e})}):u(e)}},75251:(e,t,n)=>{var r=n(67294),o=Symbol.for("react.element"),s=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,s={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)i.call(t,r)&&!l.hasOwnProperty(r)&&(s[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===s[r]&&(s[r]=t[r]);return{$$typeof:o,type:e,key:c,ref:u,props:s,_owner:a.current}}t.Fragment=s,t.jsx=c,t.jsxs=c},85893:(e,t,n)=>{e.exports=n(75251)},11151:(e,t,n)=>{n.d(t,{Z:()=>a,a:()=>i});var r=n(67294);const o={},s=r.createContext(o);function i(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); |