我需要编写一个 python 脚本来打开一个网站,当网站完全打开时,它会截取打开的网站的屏幕截图。
我是这样写的:
import webbrowser
import wx
wx.App()
link = "http://stackoverflow.com/questions"
webbrowser.get('firefox %s').open_new_tab(link)
screen = wx.ScreenDC()
size = screen.GetSize()
bmp = wx.EmptyBitmap(size[0], size[1])
mem = wx.MemoryDC(bmp)
mem.Blit(0, 0, size[0], size[1], screen, 0, 0)
del mem
bmp.SaveFile('screenshot.png', wx.BITMAP_TYPE_PNG)
它只会在 firefox 中打开一个新选项卡,但不会对其进行屏幕截图:(
我希望解决方案是跨平台的。感谢您的帮助:)
编辑:
这里的主要问题是脚本不能在我的网页完全打开之前拍照。如何解决该问题?
最佳答案
我相信您需要针对不同操作系统的不同解决方案。使用 sys.platform
找出你在哪个平台上。其余的你必须自己弄清楚,但快速的互联网搜索显示:
- 在 Linux 系统上,您可以按照此处所述获取屏幕截图:
Take a screenshot via a python script. [Linux]
- 在 Windows 系统上,您可以将您的解决方案基于以下答案:
Fastest way to take a screenshot with python on windows
- 在 Mac 系统上,这将有助于:
关于python - 在python脚本中截取打开网站的屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12563350/