Skip to content
This repository

URL manipulation made simple.

tree: b1d3f7e0a6

Fetching latest commit…

Cannot retrieve the latest commit at this time


furl is a small Python library that makes manipulating URLs simple.

Python's standard urllib and urlparse modules provide a number of URL manipulation functions, but using these functions to perform common URL manipulations proves tedious. Furl makes manipulating URLs simple.

Furl is Unlicensed in the public domain so you can build amazing things.

Query arguments are easy. Really easy.

>>> from furl import furl
>>> f = furl('')
>>> f.args['three'] = '3'
>>> del f.args['one']
>>> f.url

Or use furl's inline modification methods.

>>> furl('').add({'two':'2'}).url

>>> furl('').set({'three':'3'}).url

>>> furl('').remove(['one']).url

Encoding is handled for you.

>>> f = furl('')
>>> f.path = 'some encoding here'
>>> f.args['and some encoding'] = 'here, too'
>>> f.url

Fragments have a path and a query, too.

>>> f = furl('')
>>> f.fragment.path.segments = ['two', 'directories']
>>> f.fragment.args = {'one':'argument'}
>>> str(f)


See more furl magic and examples in furl's API document,


Installing furl with pip is easy.

$ pip install furl
Something went wrong with that request. Please try again.