<p>我建议使用<a href="http://selenium-python.readthedocs.org/en/latest/" rel="nofollow noreferrer">selenium</a>。它是为进行网络自动化、屏幕截图和测试而设计的。因为它使用firefox,所以很容易获得完整的flash支持。它也可以在无头模式下运行。下面的代码可以像youtube视频一样用flash截取网页截图。你可以看到下面的截图。有几件事要记住。selenium有一个save_屏幕截图方法,您可以看到它在代码中被注释掉了。我没有使用它是因为它没有对flash组件进行正确的屏幕截图,您可以使用<a href="https://stackoverflow.com/questions/7642519/taking-screenshot-of-flash-object-using-selenium-with-webdriver">Taking screenshot of flash object using Selenium with Webdriver</a>中的技术来纠正这个问题。不过,我选择了使用imagemagic导入命令拍摄屏幕截图。这是一个屏幕截图工具,在Linux中工作。您可以查看<a href="https://stackoverflow.com/questions/69645/take-a-screenshot-via-a-python-script-linux">Take a screenshot via a python script. [Linux]</a>和<a href="https://stackoverflow.com/questions/2846947/get-screenshot-on-windows-with-python">Get screenshot on Windows with Python?</a>以了解其他截图方法。</p>
<p><strong>代码</strong></p>
<pre><code>import time, selenium.webdriver, subprocess
browser = selenium.webdriver.Firefox()
browser.get('http://www.youtube.com/watch?v=bFEoMO0pc7k')
time.sleep(6)
#browser.save_screenshot('test.png')
subprocess.check_output('import -window root screen.png', shell=True)
browser.quit()
</code></pre>
<p><strong>屏幕截图</strong></p>
<p><img src="https://i.stack.imgur.com/OkJJB.jpg" alt="enter image description here"/></p>