LoginSignup
33
30

More than 5 years have passed since last update.

pythonでweb画面キャプチャ取得

Posted at

webデザインまとめサイトを作ろうと思い、web画面キャプチャをお手軽に作成する方法を模索中。とりあえずpythonとseleniumで実装してみた。

前提

  • max os sierra
  • python 3.5

準備

seleniumのインストール

pip install selenium

ChromeWebdriverのインストール

こちらよりファイルをダウンロード。
ダウンロードしたファイルのディレクトリで以下を実行。

$ mv chromedriver  
import time
import re
from selenium import webdriver

#URLのドメイン抽出パターン作成
pat = r"https?://(www.)?([\w-]+).[\w.]"

# コマンドラインよりURL取得。「,」区切りで複数入力可能
inp = input("URLを入力\n")

# 「,」でリストへ分割。さらに左右の空白消去
URLS = list(map(str.strip,(inp.split(","))))

# プラウザ起動(Chrome)
driver = webdriver.Chrome()

# リストからURLをひとつづつ処理
for url in URLS :
    # ドメインの一部をファイル名として設定
    site_name = re.search(pat,url)
    file_name = "{0}.png".format(site_name.group(2))
    # URLを開く
    driver.get(url)
    # ウィンドウサイズとズームを設定
    driver.set_window_size(1250, 1036)
    driver.execute_script("document.body.style.zoom='90%'")
    # 読み込み待機時間
    time.sleep(2)
    # imagesフォルダにスクリーンショットを保存
    driver.save_screenshot("./images/" + file_name)

# プラウザを閉じる
driver.quit()
33
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
33
30