Skip to main content

Beautiful Soup is a library that makes it easy to scrape information from web pages. It sits atop an HTML or XML parser, providing Pythonic idioms for iterating, searching, and modifying the parse tree.

Quick start

>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup("<p>Some<b>bad<i>HTML")
>>> print(soup.prettify())
<html>
 <body>
  <p>
   Some
   <b>
    bad
    <i>
     HTML
    </i>
   </b>
  </p>
 </body>
</html>
>>> soup.find(string="bad")
'bad'
>>> soup.i
<i>HTML</i>
#
>>> soup = BeautifulSoup("<tag1>Some<tag2/>bad<tag3>XML", "xml")
#
>>> print(soup.prettify())
<?xml version="1.0" encoding="utf-8"?>
<tag1>
 Some
 <tag2/>
 bad
 <tag3>
  XML
 </tag3>
</tag1>

To go beyond the basics, comprehensive documentation is available.

Links

Note on Python 2 sunsetting

Beautiful Soup's support for Python 2 was discontinued on December 31, 2020: one year after the sunset date for Python 2 itself. From this point onward, new Beautiful Soup development will exclusively target Python 3. The final release of Beautiful Soup 4 to support Python 2 was 4.9.3.

Supporting the project

If you use Beautiful Soup as part of your professional work, please consider a Tidelift subscription. This will support many of the free software projects your organization depends on, not just Beautiful Soup.

If you use Beautiful Soup for personal projects, the best way to say thank you is to read Tool Safety, a zine I wrote about what Beautiful Soup has taught me about software development.

Building the documentation

The bs4/doc/ directory contains full documentation in Sphinx format. Run make html in that directory to create HTML documentation.

Running the unit tests

Beautiful Soup supports unit test discovery using Pytest:

$ pytest

Release files for beautifulsoup4 4.15.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for beautifulsoup4 4.15.0
File Size Uploaded
beautifulsoup4-4.15.0.tar.gz 632.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for beautifulsoup4 4.15.0
File Interpreter ABI Platform
beautifulsoup4-4.15.0-py3-none-any.whl Python 3 none any Details

Total release size: 742.5 kB

Release files / beautifulsoup4-4.15.0.tar.gz

Download URL beautifulsoup4-4.15.0.tar.gz
Size 632.6 kB
Tags Source
SHA-256 checksum
How to use checksums
288e3ca7d54b06f2ac191970bc275c1939cb46d450b255bf6718b04aa37ab4f7
BLAKE2b-256 checksum
How to use checksums
4365318323f98dbee45d42dff61d8f047181bc6f2268a9068cfad035a46be5af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.27.0

Release files / beautifulsoup4-4.15.0-py3-none-any.whl

Download URL beautifulsoup4-4.15.0-py3-none-any.whl
Size 109.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d6f88de62e1d4e38ecb1077eb9724cd0eff29d2a08ca16a401e9b9e93f117cf9
BLAKE2b-256 checksum
How to use checksums
88c692fcd42f1ba33e1184263f25bfabf3d27c383410470f169e4b8163bf9c17
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.27.0

Release history Release notifications | RSS feed

This release

4.15.0 This release

2 release files

4.14.3

2 release files

4.14.2

2 release files

4.14.1

2 release files

4.14.0

2 release files

4.13.5

2 release files

4.13.4

2 release files

4.12.3

2 release files

4.12.0

2 release files

4.11.2

2 release files

4.9.3

3 release files

4.9.2

3 release files

4.9.1

3 release files

4.9.0

3 release files

4.8.2

3 release files

4.8.1

3 release files

4.8.0

3 release files

4.7.1

3 release files

4.7.0

3 release files

4.6.3

3 release files

4.6.2

3 release files

4.6.1

5 release files

4.6.0

3 release files

4.5.3

3 release files

4.5.2

2 release files

4.5.1

3 release files

4.5.0

3 release files

4.4.1

3 release files

4.4.0

3 release files

4.3.2

1 release file

4.3.1

1 release file

4.3.0

1 release file

4.2.1

1 release file

4.2.0

1 release file

4.1.3

1 release file

4.1.2

1 release file

4.1.1

1 release file

4.1.0

1 release file

4.0.5

1 release file

4.0.4

1 release file

4.0.3

1 release file

4.0.2

1 release file

4.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page