Как сделать снимок экрана с помощью PIL? - PullRequest
0 голосов
/ 22 апреля 2011

Я пытаюсь написать серверный процесс, который позволит вам ввести URL, затем каждые 30 минут пинговать этот URL и захватывать его как изображение.Возможно ли это с помощью комбинации чего-то вроде CURL, urllib2 и PIL?

Ответы [ 2 ]

1 голос
/ 22 апреля 2011

Curl, urllib2 и т. Д., Захват HTML-кода для веб-страницы.Но страница сама по себе не выглядит как .Вместо этого браузер использует этот код и отображает веб-страницу в соответствии со своими внутренними правилами использования этого кода.И, конечно же, каждый браузер отображает страницу немного по-своему.

Другими словами, вы не можете сделать снимок страницы, не имея веб-браузера, чтобы сгенерировать страницу, чтобы сделать снимок.

Если вы чувствуете себя очень амбициозно, вы можете создать собственный настраиваемый рендерер страниц со сценариями, используя движок рендеринга из выбранного вами браузера - все они делают движок рендеринга отдельным компонентом что вы можете работать отдельно.IE называется «Trident», Firefox - «Gecko», Chrome - «WebKit» и т. Д.

В противном случае вы захотите просто выполнить какой-либо сценарий пользовательского интерфейса, как вы могли бы сделать с iOpus или Селен .Selenium может быть написан на Python, поэтому он вам подходит.

РЕДАКТИРОВАТЬ

Вот, пожалуйста, .Это выглядит довольно просто.

0 голосов
/ 22 апреля 2011

ImageGrab можно использовать для создания снимка экрана на Windows.Однако вы не можете сделать это просто с помощью CURL, urllib2 и PIL, потому что вам придется визуализировать веб-сайт.Возможно, проще всего было бы открыть сайт в браузере и получить скриншот.

...