Chrome browser control, a HTML 5 based Python GUI framework.      💬 Forum:
C++ Python JavaScript C Objective-C Objective-C++ Other

README.md

CEF Python

Table of contents:

Introduction

CEF Python is a BSD-licensed open source project founded by Czarek Tomczak (hire me!) in 2012 and is based on Google Chromium and the CEF Framework projects. The Chromium project focuses mainly on Google Chrome application development, while CEF focuses on facilitating embedded browser use cases in third-party applications. Lots of applications use CEF control, there are more than 100 million CEF instances installed around the world. Examples of embedding Chrome browser are available for many popular GUI toolkits including: wxPython, PyGTK, PyQt, PySide, Kivy, Panda3D and PyGame/PyOpenGL.

There are many use cases for CEF. You can embed a web browser control based on Chromium with great HTML 5 support. You can use it to create a HTML 5 based GUI in an application, this can act as a replacement for standard GUI toolkits such as wxWidgets, Qt or GTK. In such case to communicate between Python<>Javascript use javascript bindings or embed an internal web server and talk using http requests. You can render web content off-screen in applications that use custom drawing frameworks. You can use it for automated testing of existing applications. You can use it for web scraping or as a web crawler, or other kind of internet bots.

Major sponsors





See the Support development section for a list of all the individuals and companies supporting CEF Python.

Funding request - v59.0 release

For those interested in sponsoring a v59.0 release please see Issue #370.

Install

You can install pypi/cefpython3 package using pip tool. On Linux pip 8.1+ is required. You can also download packages for offline installation available on the GitHub Releases pages. Command to install with pip:

pip install cefpython3==57.0

If you get an error when importing the cefpython3 package on Windows then see this section in the Knowledge Base document: ImportError: DLL load failed (Windows).

Tutorial

See the Tutorial.md file.

Examples

See the Examples-README.md file.

Support

Support development

If you would like to support general CEF Python development efforts by making a donation please click the Paypal Donate button:



If you would like to see some feature implemented you can make a comment about that when making a donation. It will give it a higher priority.

If you are interested in sponsorship opportunities please contact Czarek directly (linkedin profile or email).

Thanks

  • [2017] Many thanks to ClearChat Inc. for sponsoring the v55/v56 releases for all platforms
  • [2016-2017] Thanks to JetBrains for providing an Open Source license for PyCharm
  • [2012-2016] Thanks to those who have made a Paypal donation: Rentouch GmbH, Walter Purvis, Rokas Stupuras, Alex Rattray, Greg Kacy, Paul Korzhyk
  • [2012-2016] Thanks to those who have donated their time through code contributions, they are listed in the Authors file
  • [2013-2015] Lots of thanks goes to Cyan Inc. for sponsoring this project for a long time, making CEF Python 3 mature
  • [2014] Thanks to Adam Duston for donating a Macbook to aid the development of Mac port
  • [2013] Thanks to Rentouch GmbH for sponsoring the development of the off-screen rendering support
  • [2013] Thanks to Thomas Wusatiuk for sponsoring the development of the web response reading features

Releases

Information on planned new and current releases, supported platforms, python versions, architectures and requirements. If you want to support old operating systems then choose the v31 release.

Next release

  • To see planned new features or bugs to be fixed in the next release, see the next release label in the tracker
  • To see planned new features or bugs to be fixed in the in one of next releases, see the next release 2 label in the tracker

Latest release

OS Py2 Py3 32bit 64bit Requirements
Windows 2.7 3.4 / 3.5 / 3.6 Yes Yes Windows 7+
Linux 2.7 3.4 / 3.5 / 3.6 Yes Yes Debian 7+ / Ubuntu 12.04+
Mac 2.7 3.4 / 3.5 / 3.6 No Yes MacOS 10.9+

These platforms are not supported yet:

v31 release

OS Py2 Py3 32bit 64bit Requirements
Windows 2.7 No Yes Yes Windows XP+
Linux 2.7 No Yes Yes Debian 7+ / Ubuntu 12.04+
Mac 2.7 No Yes Yes MacOS 10.7+

Additional information for v31.2 release:

  • On Windows/Mac you can install with command: pip install cefpython3==31.2
  • Downloads are available on wiki pages and on GitHub Releases tagged v31.2.
  • Documentation is on wiki pages
  • API reference is available in revision 169a1b2

Quick links

Docs

API categories

Modules

Settings

Classes and objects

Client handlers (interfaces)

Other interfaces

API index