セレン4とクロームのドライバは、フルページのスクリーンショットを取る
私は完全なページのスクリーンショットを取得しようとしてセレン4と一緒に遊んでいくつかの時間を費やした、これは私が見つけたものです.私たちはクロムドライバ のdevtoolsプロトコルを使用しますこれはドライバによって行われます.ExecuteCount CDPENER CMD (コマンド、パラメータ) コマンドは
のパラメータは、here
トリッキーパームは
なぜ、私はこれを書いていますか?
DevToolsプロトコルに関連した良いドキュメンテーションはありません、そして、セレンへのその集積はまだ私がこれを書いたとき、セレン4の作品にあります.
私は、これがどんな失われた魂でも助けることを望みます.
Page.captureScreenshot
ですclip
です# I am assuming we already have a driver object.
# We need the dimensions of the content
page_rect = driver.execute_cdp_cmd('Page.getLayoutMetrics', {})
# parameters needed for ful page screenshot
# note we are setting the width and height of the viewport to screenshot, same as the site's content size
screenshot_config = {'captureBeyondViewport': True,
'fromSurface': True,
'clip': {'width': page_rect['contentSize']['width'],
'height': page_rect['contentSize']['height'],
'x': 0,
'y': 0,
'scale': 1},
}
# Dictionary with 1 key: data
base_64_png = driver.execute_cdp_cmd('Page.captureScreenshot', screenshot_config)
# Write img to file
with open("imageToSave.png", "wb") as fh:
fh.write(base64.urlsafe_b64decode(base_64_png['data'))
なぜ、私はこれを書いていますか?
DevToolsプロトコルに関連した良いドキュメンテーションはありません、そして、セレンへのその集積はまだ私がこれを書いたとき、セレン4の作品にあります.
私は、これがどんな失われた魂でも助けることを望みます.
Reference
この問題について(セレン4とクロームのドライバは、フルページのスクリーンショットを取る), 我々は、より多くの情報をここで見つけました https://dev.to/gdledsan/selenium-4-and-chrome-driver-take-full-page-screenthos-2j8dテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol