Skip to main content

custom rendering of beautifulsoup object in ipython notebook and qtconsole

Project description

IPython-BeautifulSoup

IPython-BeautifulSoup is an IPython extension for displaying BeautifulSoup HTML/XML objects as prettified and syntax highlighted HTML blocks in IPython notebook and qtconsole.

Syntax highlighting is accomplished with Pygments.

teaser

Install

Simply run:

pip install "ipython-beautifulSoup[bs4]"

For BeautifulSoup 3 instead of BeautifulSoup 4, change bs4 to bs3.

Installing IPython Notebook

See http://ipython.org/ipython-doc/stable/install/index.html

To install IPython notebook or qtconsole as well, append notebook and/or qtconsole to the extras specifier after “bs4” separated by a “,”, like this:

pip install "ipython-beautifulSoup[bs4,notebook,qtconsole]"

On Ubuntu LTS, if you want to install IPython notebook, you’ll need to do this before:

sudo apt-get install python-dev g++

For the qtconsole do this (if you do this in a virtualenv) (WARNING: it’s slow):

sudo apt-get install make cmake qt4-qmake libqt4-dev
pip install pyside

Usage

In IPython notebook or qtconsole, do:

%load_ext soup

This will push a series of callables into your current context, as well as a monkey-patched BeautifulSoup and requests.

You can now use BeautifulSoup like you would if it was imported from the corresponding module.

There is great chances that you’ll want to configure the output by using configure_ipython_beautifulsoup, for example like this (just after the %load_ext):

configure_ipython_beautifulsoup(show_html=True, show_css=True, show_js=False)

To see configure_ipython_beautifulsoup documentation just do (in any interface of IPython):

configure_ipython_beautifulsoup?

This also loads a shortcut function called p (for p arse) defined as follows:

def p(url):
    if requests is not None:
        return BeautifulSoup(requests.get(url).contents)
    return BeautifulSoup(urlopen(url).read())

A note on security

The most safe option is to set all options of configure_ipython_beautifulsoup to False (the default).

Screenshots

IPython Notebook

.find:

1

.findAll:

2

Contributors

In chronological order:

Don’t hesitate to add yourself.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipython-beautifulsoup-0.2.tar.gz (4.1 kB view hashes)

Uploaded Source

Built Distributions

ipython_beautifulsoup-0.2-py27-none-any.whl (6.4 kB view hashes)

Uploaded Python 2.7

ipython_beautifulsoup-0.2-py2.7.egg (4.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page