Инструменты для захвата и конвертирования Интернета

Обработчик с PythonPython API

Описание

Возникли проблемы с отладкой вашего обработчика? Попробуйте Инструмент проверки обработчика обратного вызова.

Описанный здесь обработчик обрабатывает обратные вызовы из веб-службы GrabzIt. URL этого обработчика передается GrabzIt в callBackURL параметр Save метод. Однако этот метод будет работать только в том случае, если обработчик доступен через Интернет.

Следующие параметры передаются в обработчик как параметры GET.

  • id - уникальный идентификатор скриншота, используемый GetResult метод
  • filename - имя файла скриншота, автоматически созданное путем объединения уникального идентификатора скриншота с расширением файла
  • сообщение - любое сообщение из-за ошибки, возникшей при обработке скриншота
  • customId - любой пользовательский идентификатор который был передан веб-сервису GrabzIt через Save метод
  • format - формат скриншота, например, «bmp8», «bmp16», «bmp24», «bmp», «csv», «gif», «jpg», «json», «pdf», «png», « webp "," tiff "или" xlsx "
  • targetterror - если возвращается 1, то захват содержит общую ошибку из-за проблемы, вызванной целью захвата

Если вы хотите заблокировать весь доступ к обработчику, кроме GrabzIt, используйте это техника безопасности.

Пример

Помните, что этот обратный вызов не будет работать, если ваше приложение находится на localhost.

Этот пример показывает, как может быть реализован обработчик GrabzIt Python. Он фиксирует пять параметров, переданных ему из сервиса GrabzIt, включая уникальный идентификатор снимка экрана, который передается в GetResult метод.

Затем этот метод возвращает скриншот, который saveг в каталоге результатов. Однако если null значение возвращается из GetResult Этот метод указывает на то, что произошла ошибка.

import os
import cgi
from GrabzIt import GrabzItClient
from ConfigParser import SafeConfigParser

form = cgi.FieldStorage()

message = form.getvalue("message")
customId = form.getvalue("customid")
id = form.getvalue("id")
filename = form.getvalue("filename")
format = form.getvalue("format")
targeterror = form.getvalue("targeterror")

# Custom id can be used to store user ids or whatever is needed for the later processing of the
# resulting screenshot

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
result = grabzIt.GetResult(id)

if result != None:
        # Ensure that the application has the correct rights for this directory.
        fo = open("results" + os.sep + filename, "wb")
        fo.write(result)
        fo.close()
        
print "Status: 200 OK"
print