3 ms·
If I'm understanding correctly, could you just select the body tag and screenshot that? In Selenium Python that'd be: # driver is a Firefox driver body
by mcintyre1994 9y ago
If I'm understanding correctly, could you just select the body tag and screenshot that? In Selenium Python that'd be:
# driver is a Firefox driver
body = driver.find_element_by_tag_name('body')
screenshot = body.screenshot_as_base64 # png bytes
- magnetic 9y agoJust tried this - doesn't seem to work: - a lot of (visible) elements are missing - the screenshot is still cropped to whatever viewport is used
- mcintyre1994 9y agoDefinitely just speculating here, but there is a `driver.save_screenshot(path)` method that would probably be worth trying. This worked for me: from selenium.webdriver import Firefox from selenium.webdriver.firefox.options import Options geckodriver_path = '/usr/local/bin/geckodriver' options = Options() options.add_argument('-headless') driver = Firefox(executable_path=geckodriver_path, firefox_options=options) url='https://news.ycombinator.com/item?id=16576015' driver.get(url) driver.save_screenshot('./hn.png')