document.getElementById in Python, the converted code will use the actual
According to the documentation, Transcrypt accomplishes these tasks with CPython's Abstract Syntax Tree module, which allows programmatic access to the way Python parses its own code. Though the project is still in alpha, it'll be fascinating to see how it shapes up.
The biggest drawback to Jiphy right now is that it supports only a subset of Python's features. Classes or default arguments aren't available yet, although decorators and exceptions are. Much of this is because Jiphy insists on establishing as close to a line-to-line relationship as possible between the source and target code, but its developers are eyeing the new features in ES6 for more advanced Python feature support.
Someday, when WebAssembly becomes a reality, it may be possible to develop for the Web in any language we choose. Brython's philosophy, at least as far as Python 3 is concerned: Why wait?