from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--disable-gpu')
mobile_emulation = {
"deviceMetrics": {"width": 360, "height": 640, "pixelRatio": 3.0},
"userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1"}
options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Chrome(options=options)
driver.get('https://stackoverflow.com/')
driver.save_screenshot('test.png')
Run Code Online (Sandbox Code Playgroud)
您好, selenium 拍摄的图像被剪切并出现页面滚动条(上/下和右/左),有没有办法使用 selenium 截取移动视图的屏幕截图?
编辑:1
对于浏览器,我调整了宽度
required_width = driver_selected.execute_script('return document.body.parentNode.scrollWidth')
Run Code Online (Sandbox Code Playgroud)
手机用
required_width = driver_selected.get_window_size().get('width') # Keep same
Run Code Online (Sandbox Code Playgroud)
最后在两个
required_height = driver_selected.execute_script('return document.body.parentNode.scrollHeight')
driver_selected.set_window_size(required_width, required_height)
driver_selected.find_element_by_tag_name('body').screenshot(png_file)
Run Code Online (Sandbox Code Playgroud) python selenium selenium-chromedriver google-chrome-headless mobileemulation