´elisk´ Воскресенье, 24.11.2024, 10:49:45
Здраствуйте Гость | RSS


Меню сайта
Категории раздела
Мои статьи [9]
Поставьте оценку
Оцените мой сайт
Всего ответов: 38
INFOBAR

Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0
Форма входа

free counters

Информеры


Праздники сегодня

Главная » Статьи » Мои статьи

скриншот на Python

Скачиваем модуль PIL для нашей системы: 
https://developers.google.com/appengine/docs/python/images/installingPIL?hl=ru
дальше проще: 

#-*- coding: utf-8 -*- 
from PIL import ImageGrab 
screen_one = ImageGrab.grab() 
screen_one.save('screen.jpg') # скрин в каталоге с программой(скриптом)

 

Вот еще вариант для Windows, правда скриншот будет размером около 8 Mb:

# -*- coding:utf-8 -*-
import win32ui, win32gui, win32con, win32api
 
hwnd = win32gui.GetDesktopWindow()
width = win32api.GetSystemMetrics(win32con.SM_CXVIRTUALSCREEN)
height = win32api.GetSystemMetrics(win32con.SM_CYVIRTUALSCREEN)
x = win32api.GetSystemMetrics(win32con.SM_XVIRTUALSCREEN)
y = win32api.GetSystemMetrics(win32con.SM_YVIRTUALSCREEN)
 
hwndDC = win32gui.GetWindowDC(hwnd)
mfcDC  = win32ui.CreateDCFromHandle(hwndDC)
saveDC = mfcDC.CreateCompatibleDC()
 
saveBitMap = win32ui.CreateBitmap()
saveBitMap.CreateCompatibleBitmap(mfcDC, width, height)
saveDC.SelectObject(saveBitMap)
saveDC.BitBlt(( 0, 0 ), (width, height),  mfcDC,  (x, y),  win32con.SRCCOPY)
 
#Сохраняем полученный битмап в BPM 
saveBitMap.SaveBitmapFile(saveDC,  'screenshot.bmp')

Но самый лучший способ вот этот;

# -*- coding:utf-8 -*-
import os
import sys
import time
import Image
import ImageGrab

#Директория где будем сохранять:
SaveDirectory=r'C:\\Users\1\\Desktop\\'

img=ImageGrab.grab()
saveas=os.path.join(SaveDirectory,'Screenshot_'+time.strftime('%Y%m%d%%H%M')+'.jpg')
img.save(saveas)

Категория: Мои статьи | Добавил: Rain (20.08.2012)
Просмотров: 1268 | Комментарии: 2 | Рейтинг: 5.0/1
Всего комментариев: 2
2 Rain  
0
С PILом как то получше.

1 user  
1
в винде можно без пила, смотри ctypes gdi+

Имя *:
Email *:
Код *:
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright I.E.G. © 2024

    Бесплатный конструктор сайтов - uCoz