お知らせ:

当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

Python ファンクションスタックで Headless に接続

このセクションでは、お好みのブラウザ自動化ライブラリを使用して、Python ファンクションスタックでヘッドレスに接続するために必要なスクリプトを紹介します:

Puppeteer

SmartBrowz なしで Puppeteer を使用する場合

copy
import asyncio
from puppeteer import launch
async def main():
    browser = await launch()
    page = await browser.newPage()
    await page.goto('http://example.com')
    await page.screenshot({'path': 'example.png'})
    await browser.close()
asyncio.get_event_loop().run_until_complete(main())

SmartBrowz で Puppeteer を使用する場合

copy
import asyncio
import pyppeteer
async def main():
  # puppeteer.launchをpyppeteer.launcher.connectに置き換える
  browser = await pyppeteer.launcher.connect(
    browserWSEndpoint='YOUR_CDP_ENDPOINT'
    )
  # 残りのコードはそのままです
  page = await browser.newPage()
  await page.goto("https://example.com")
  await page.screenshot(path="screenshot.png")
  await browser.close()
asyncio.get_event_loop().run_until_complete(main())
注意: コンソールから CDP エンドポイントをコピーし、このコードを実装する際に「6」行目に貼り付けてください。

Playwright

SmartBrowz なしで Playwright を使用する場合

copy
from playwright.sync_api import sync_playwright
def run(playwright):
    chrome = playwright.chrome
    browser = chrome.launch()
    page = browser.new_page()
    page.goto("https://example.com")
    browser.close()
with sync_playwright() as playwright:
    run(playwright)

SmartBrowz で Playwright を使用する場合

copy
import asyncio
from playwright.async_api import async_playwright
async def run(playwright):
    # playwright.chromium.launchをconnect_over_cdpに置き換える
    browser = playwright.chromium.connect_over_cdp("YOUR_CDP_ENDPOINT")
    # 残りのコードはそのままです
    context = await browser.new_context()
    page = await context.new_page()
    await page.goto("https://example.com")
    await page.screenshot(path="screenshot.png")
    await browser.close()
async def main():
    async with async_playwright() as playwright:
        await run(playwright)      
asyncio.run(main())
注意: コンソールから CDP エンドポイントをコピーし、このコードを実装する際に「5」行目に貼り付けてください。

Selenium

SmartBrowz なしで Selenium を使用する場合

copy
from selenium import webdriver
from PIL import Image
driver = webdriver.Chrome(executable_path = "path\\to\\chromedriver.exe")
url = "https://example.com/"
driver.get(url)
driver.save_screenshot('ss.png')
screenshot = Image.open('ss.png')
driver.close()

SmartBrowz で Selenium を使用する場合

copy
import asyncio
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
async def index():
    options = Options()
    options.add_argument("--disable-extensions")
    options.add_argument("--no-sandbox")
    options.add_argument('--headless')
    options.add_argument('--disable-dev-shm-usage')
# webdriver.Chromeをwebdriver.Remoteに変更する
driver = webdriver.Remote(
    command_executor='YOUR_WEBDRIVER_ENDPOINT',
    options=options
)
#残りのコードはそのままです
driver.get("https://example.com")
driver.save_screenshot("screenshot.png")
driver.close()

async def my_async_function(): await index()

asyncio.run(my_async_function())

注意: コンソールから Webdriver エンドポイントをコピーし、このコードを実装する際に「13」行目に貼り付けてください。

最終更新日 2026-03-30 13:40:30 +0530 IST

このページについて