> 웹 프론트엔드 > JS 튜토리얼 > 서버에서 Puppeteer 실행: 전체 튜토리얼

서버에서 Puppeteer 실행: 전체 튜토리얼

Mary-Kate Olsen
풀어 주다: 2025-01-01 03:02:10
원래의
840명이 탐색했습니다.

Running Puppeteer on a Server: A Complete Tutorial

Puppeteer는 DevTools 프로토콜을 통해 Chrome 또는 Chromium 브라우저를 제어할 수 있는 고급 API를 제공하는 Node.js 라이브러리입니다. 웹 스크래핑, 자동화된 테스트, 스크린샷 캡처 등을 위한 강력한 도구입니다. Puppeteer를 로컬에서 사용하는 것은 간단하지만 서버에서 실행하려면 추가 고려 사항이 필요합니다. 이 가이드는 서버에서 Puppeteer를 시작하고 실행하는 단계를 안내합니다.


Puppeteer를 위한 서버 준비

  • 업데이트 서버

이 단계는 Puppeteer의 성공적인 실행을 위해 매우 중요합니다. 다음 명령을 실행하세요.

sudo apt update -y
sudo apt upgrade -y
로그인 후 복사
  • 종속성 설치

Puppeteer가 원활하게 실행되도록 하려면 다음 종속성을 설치하세요.

sudo apt-get install libpangocairo-1.0-0 libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 libxi6 libxtst6 libnss3 libcups2 libxss1 libxrandr2 libatk1.0-0 libgtk-3-0 libasound2t64
로그인 후 복사
  • Puppeteer 설치

다음 명령을 실행하여 최적의 성능을 위해 항상 권장되는 최신 버전의 Puppeteer를 설치하세요.

npm i puppeteer
로그인 후 복사

인형극 사용

다음 코드 조각을 사용하면 원하는 경로에서 이 함수를 호출하여 Puppeteer가 올바르게 작동하는지 확인할 수 있습니다.

const puppeteer = require("puppeteer");

/**
 * Launches a Puppeteer browser, navigates to a webpage, and then closes the browser.
 *
 * Launch Options:
 * - headless: Run the browser in headless mode (no GUI).
 * - args:
 *   - "--no-sandbox": Required if running as the root user.
 *   - "--disable-setuid-sandbox": Optional, try if you encounter sandbox errors.
 */

const runPuppeteer = async () => {
  try {
    // Launch a Puppeteer browser instance with custom arguments
    const browser = await puppeteer.launch({
      headless: true,
      args: [
        "--no-sandbox",
        "--disable-setuid-sandbox",
      ],
    });

    // Open a new page in the browser
    const page = await browser.newPage();

    // Navigate to the specified URL
    await page.goto("https://www.google.com");

    console.log("Navigation to Google completed.");

    // Close the browser
    await browser.close();
    console.log("Browser closed successfully.");
  } catch (error) {
    console.error("An error occurred:", error);
  }
};

// Execute the function
runPuppeteer();
로그인 후 복사

결론

서버에서 Puppeteer를 실행하려면 종속성, 권한 및 리소스를 처리하기 위한 신중한 설정이 필요합니다. 이 가이드를 따르면 서버 환경에서 웹 스크래핑이나 자동화된 테스트와 같은 작업을 위해 Puppeteer를 효과적으로 배포할 수 있습니다. 고급 사용 사례의 경우 프로세스 관리용 PM2, 컨테이너화용 Docker와 같은 도구를 사용하는 것이 좋습니다.

이 가이드를 다른 사람들과 자유롭게 공유하고, 지침을 따른 후 문제가 발생하면 댓글로 알려주시기 바랍니다.

위 내용은 서버에서 Puppeteer 실행: 전체 튜토리얼의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿