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
Yes
No
Send your feedback to us
Skip
Submit