Democritus Html
Democritus functions[1] for working with HTML.
[1] Democritus functions are simple, effective, modular, well-tested, and well-documented Python functions.
We use d8s (pronounced "dee-eights") as an abbreviation for democritus (you can read more about this here).
Installation
pip install d8s-html
Usage
You import the library like:
from d8s_html import *
Once imported, you can use any of the functions listed below.
Functions
-
def html_text(html_content: StringOrBeautifulSoupObject) -> str: """."""
-
def html_unescape(html_content: StringOrBeautifulSoupObject) -> str: """."""
-
def html_escape(html_content: StringOrBeautifulSoupObject) -> str: """."""
-
def html_to_markdown(html_content: StringOrBeautifulSoupObject, **kwargs) -> str: """Convert the html string to markdown."""
-
def html_find_comments(html_content: StringOrBeautifulSoupObject) -> str: """Get a list of all of the comments in the html strings."""
-
def html_soupify(html_string: str, parser: str = 'html.parser') -> bs4.BeautifulSoup: """Return an instance of beautifulsoup with the html."""
-
def html_remove_tags(html_content: StringOrBeautifulSoupObject) -> bs4.BeautifulSoup: """."""
-
def html_remove_element(html_content: StringOrBeautifulSoupObject, element_tag: str) -> bs4.BeautifulSoup: """."""
-
def html_find_css_path(html_content: StringOrBeautifulSoupObject, css_path: str) -> ListOfBeautifulSoupTags: """Find the given css_path in the html_content."""
-
def html_elements_with_class( html_content: StringOrBeautifulSoupObject, html_element_class: str ) -> ListOfBeautifulSoupTags: """Find all elements with the given class from the html string."""
-
def html_elements_with_id(html_content: StringOrBeautifulSoupObject, html_element_id: str) -> ListOfBeautifulSoupTags: """Find all elements with the given html_element_id from the html_content."""
-
def html_elements_with_tag(html_content: StringOrBeautifulSoupObject, tag: str) -> ListOfBeautifulSoupTags: """."""
-
def html_headings_table_of_contents(html_content: StringOrBeautifulSoupObject) -> ListOfBeautifulSoupTags: """."""
-
def html_headings_table_of_contents_string( html_content: StringOrBeautifulSoupObject, *, indentation: str = ' ' ) -> str: """."""
-
def html_headings(html_content: StringOrBeautifulSoupObject) -> ListOfBeautifulSoupTags: """."""
-
def html_to_json(html_content: StringOrBeautifulSoupObject, *, convert_only_tables: bool = False): """Convert the html to json using https://gitlab.com/fhightower/html-to-json."""
-
def html_soupify_first_arg_string(func): """Return a Beautiful Soup instance of the first argument (if it is a string)."""
Development
👋 If you want to get involved in this project, we have some short, helpful guides below:
If you have any questions or there is anything we did not cover, please raise an issue and we'll be happy to help.
Credits
This package was created with Cookiecutter and Floyd Hightower's Python project template.
Release files for d8s-html 0.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| d8s_html-0.7.0.tar.gz | 97.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| d8s_html-0.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 118.7 kB
Release files / d8s_html-0.7.0.tar.gz
| Download URL | d8s_html-0.7.0.tar.gz |
|---|---|
| Size | 97.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3a64a726be9b406823509b5c0c1f01af1b6f4cc863f452b693570055607f8d64
|
|
BLAKE2b-256 checksum How to use checksums |
fe9da1c403a58e655913519d9d4fa0de13ff9da69969dd04b8756e3d94a67f00
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 1, 2026.
Transparency logRelease files / d8s_html-0.7.0-py3-none-any.whl
| Download URL | d8s_html-0.7.0-py3-none-any.whl |
|---|---|
| Size | 20.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
649d21ac7a1b1ad75e436df5baa246f3a5fa76e2bafdc2dab885565380793b1e
|
|
BLAKE2b-256 checksum How to use checksums |
d55f123b1d835927a3b701bab0f28b2609f586d4914805b6426a551eb4f45fc3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 1, 2026.
Transparency log