Посты с тэгом webkit


Python / Генерим PDF бочками

Предыстория


На хабре неоднократно упоминались различные инструменты и способы создания скриншотов WEB страниц.

Хочу поделиться собственным «велосипедом» для создания PDF на Python и QT, дополненным и улучшенным для централизованного использования несколькими проектами.

Изначально генерация запускалась из PHP скрипта, примерно так:

<?php
// локальный файл
exec('xvfb-run python2 html2pdf.py file:///tmp/in.html /tmp/out.pdf');
// или URL
exec('xvfb-run python2 html2pdf.py http://habrahabr.ru /tmp/habr.pdf');
?>

этого было достаточно и все было хорошо…


Python / Настраиваем окружение на Mac OS и собираем автономное приложение с PySide/PyQt


Сейчас все удобнее становится использовать HTML и JavaScript в интерфейсах приложений. И именно такая задача недавно появилась передо мной, с одним важным условием — на выходе должно быть полностью standalone приложение, не требующее установки дополнительных библиотек и способное запуститься в обычном пользовательском окружения.

В силу своего природного обаяния в качестве основного языка был выбран Python + PySide c WebKit на борту, для сборки app-бандла использовался py2app.

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


Расширения для hackwrench

Захотелось сделать простые, но удобные расширения для hackwrench.

Первое что пришло на ум — создать базовый класс, например PluginBase, от которого будут наследоваться все расширения. В нужный момент мы можем получить список загруженных расширений вызвав PluginBase.__subclasses__()

Как-нибудь так: self.plugins = [plugin(self) for plugin in PluginBase.__subclasses__()]



Взаимодействие pywebkitgtk и javascript

Сабж можно осуществить c помощью дополнительной библиотеки: pyjavascriptcore
Есть сборки для убунты в ppa
Пакеты будут в следующих версиях ubuntu и debian



hackwrench - webkit/pygtk browser

Начал делать браузер на базе python-webkitgtk
Профит в том, что можно будет писать расширения на python(последний раз такое было в epiphany-gecko)



И снова я решил заняться этим неблагодарным делом

Всем привет!

Надеюсь, что старые читатели блога serge.matveenko.ru сюда подтянутся.

Буду стараться писать что-нибудь полезное о заявленном в подзаголовке блога.

Ближайшие темы:

  • Gwibber - Python, GTK, WebKit
  • Piston - делаем API для проекта на Django
  • xmpppy - пишем домашнего XMPP-бота на Python