Skip to content
cztomczakPublic

About

Python bindings for the Chromium Embedded Framework (CEF)

Topics

Resources

Contributing

Stars

3.2k stars

Watchers

123 watching

Forks

Latest commit

 

History

1,264 Commits

Folders and files

Repository files navigation

CEF Python

Table of contents:

Introduction

CEF Python is an open source project founded by Czarek Tomczak in 2012 to provide Python bindings for the Chromium Embedded Framework (CEF). 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. There are numerous use cases for CEF:

  1. Use it as a modern HTML5 based rendering engine that can act as a replacement for classic desktop GUI frameworks. Think of it as Electron for Python.
  2. Embed a web browser widget in a classic Qt / GTK / wxPython desktop application
  3. Render web content off-screen in applications that use custom drawing frameworks
  4. Use it for automated testing of web applications with more advanced capabilities than Selenium web browser automation due to CEF low level programming APIs
  5. Use it for web scraping, as a web crawler or other kind of internet bots

CEF Python also provides examples of embedding CEF for many Python GUI frameworks such as PyQt, wxPython, GTK 3, Tkinter, Kivy, Panda3D, PyGame, PyOpenGL, PyWin32, PySide and PySDL2.

Install

CEF Python 147 development wheels are available on GitHub Releases.

OS Python 64bit Requirements
Windows 3.10 / 3.11 / 3.12 / 3.13 / 3.14 Yes Windows 10+
Linux 3.10 / 3.11 / 3.12 / 3.13 / 3.14 Yes Ubuntu 20.04+, Debian 11+
macOS 3.10 / 3.11 / 3.12 / 3.13 / 3.14 Yes macOS 12+ (Apple Silicon/arm64 only)

macOS wheels are tested in CI only (unit tests and a smoke test of the hello_world.py and tutorial.py examples). GUI examples and PyInstaller packaging were not tested on macOS, reports are welcome.

Examples

Support

Support development

To support general CEF Python development efforts you can make a donation using PayPal button below:


Seeking sponsors

CEF Python is seeking companies to sponsor development of this project. Most important thing would be to have continuous monthly releases with updates to latest Chromium. There is also lots of cool features and new settings that would be nice to implement. We have not yet exposed all of upstream CEF APIs. If your company would like to sponsor CEF Python development efforts then please contact Czarek. There are no active sponsors at this moment.

API

Modules

Settings

Classes and objects

Client handlers (interfaces)

Other interfaces

API index

About

Python bindings for the Chromium Embedded Framework (CEF)

Topics

Resources

Contributing

Stars

3.2k stars

Watchers

123 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages