Take a full page screenshot with Firefox on the command-line

后端 未结 6 1534
梦如初夏
梦如初夏 2020-12-04 04:34

I\'m running Firefox on a Xvfb in a VPS. What I want to do is to take a full page screenshot of the page.

I can redirect Firefox to particular page using

<         


        
相关标签:
6条回答
  • 2020-12-04 04:56

    I think what you are looking for is a utility which enables you to save a complete page opened in your browser into a png file. Most probably you are looking for a utility like commandlineprint2.

    After installing the extension, you just need to type the command:

    firefox -print http://google.com -printfile ~/foo.png
    
    0 讨论(0)
  • 2020-12-04 05:06

    The Developer Toolbar GCLI and Shift+F2 shortcut were removed in Firefox version 60. To take a screenshot in 60 or newer:

    • press Ctrl+Shift+K to open the developer console (⌥ Option+⌘ Command+K on macOS)
    • type :screenshot or :screenshot --fullpage

    Find out more regarding screenshots and other features


    For Firefox versions < 60:

    Press Shift+F2 or go to Tools > Web Developer > Developer Toolbar to open a command line. Write:

    screenshot
    

    and press Enter in order to take a screenshot.

    To fully answer the question, you can even save the whole page, not only the visible part of it:

    screenshot --fullpage
    

    And to copy the screenshot to clipboard, use --clipboard option:

    screenshot --clipboard --fullpage
    

    Firefox 18 changes the way arguments are passed to commands, you have to add "--" before them.

    You can find some documentation and the full list of commands here.

    PS. The screenshots are saved into the downloads directory by default.

    0 讨论(0)
  • 2020-12-04 05:06

    I ended up coding a custom solution (Firefox extension) that does this. I think by the time I developed it, the commandline mentioned in enreas wasn't there.

    The Firefox extension is CmdShots. It's a good option if you need finer degree of control over the process of taking the screenshot (or you want to do some HTML/JS modifications and image processing).

    You can use it and abuse it. I decided to keep it unlicensed, so you are free to play with it as you want.

    0 讨论(0)
  • 2020-12-04 05:14

    You can use selenium and the webdriver for Firefox.

    import selenium.webdriver
    import selenium.common
    
    options = selenium.webdriver.firefox.options.Options()
    # options.headless = True
    with selenium.webdriver.Firefox(options=options) as driver:
        driver.get('http://google.com')
        time.sleep(2)
        root=driver.find_element_by_tag_name('html')
        root.screenshot('whole page screenshot.png')
    
    0 讨论(0)
  • 2020-12-04 05:21

    Firefox Screenshots is a new tool that ships with Firefox. It is not a developer tool, it is aimed at end-users of the browser.

    To take a screenshot, click on the page actions menu in the address bar, and click "take a screenshot". If you then click "Save full page", it will save the full page, scrolling for you.


    (source: mozilla.net)

    0 讨论(0)
  • 2020-12-04 05:22

    Update 2018-07-23

    As was just pointed out in the comments, this question was about getting a screenshot from the command line. Sorry, I just read over that. So here is the correct answer:

    As of Firefox 57 you can create a screenshot in headless mode like this:

    firefox -screenshot https://developer.mozilla.com
    

    Read more in the documentation.

    Update 2017-06-15

    As of Firefox 55 there is Firefox Screenshots as a more flexible alternative. As of Firefox 57 Screenshots can capture a full page, too.

    Original answer

    Since Firefox 32 there is also a full page screenshot button in the developer tools (F12). If it is not enabled go to the developer tools settings (gear button) and choose "Take a fullpage screenshot" at the "Available Toolbox Buttons" section.

    developer tools toolbar source: developer.mozilla.org

    By default the screenshots are saved in the download directory. This works similar to screenshot --fullpage in the toolbar.

    0 讨论(0)
提交回复
热议问题