Skip to main content
https://badge.fury.io/py/pyDHTMLParser.png https://img.shields.io/pypi/dm/pyDHTMLParser.svg https://readthedocs.org/projects/pyDHTMLParser/badge/?version=latest https://img.shields.io/github/issues/Bystroushaak/pyDHTMLParser.svg https://img.shields.io/pypi/l/pyDHTMLParser.svg

What is it?

DHTMLParser is a lightweight HTML/XML parser created for one purpose - quick and easy picking selected tags from DOM.

It can be very useful when you are in need to write own “guerilla” API for some webpage, or a scrapper.

If you want, you can also create HTML/XML documents more easily than by joining strings.

Documentation

Full module documentation can be found here: http://pyDHTMLParser.rtfd.org

Changelog

2.2.3

2.2.2

  • Attempt to fix strange recursive inheritance problem.

2.2.0

  • Rewritten for compatibility with python3.

2.1.0 - 2.1.8

  • State parser fixed - it can now recover from invalid html like <invalid tag=something">.

  • Rewritten to use StateEnum in parser for better readability.

  • Garbage collector is now disabled during _raw_split().

  • Fixed #16 - recovery after tags which don’t ends with > (</code for example).

  • Closed #17 - implementation of ignoring of < in usage as is smaller than sign.

  • Restored support of multiline attributes.

  • .parseString() now doesn’t try to parse HTML element parameters.

  • Implemented first() getter.

  • License changed to MIT.

  • Fixed #18: bug which in some cases caused invalid output.

  • Added HTMLElement.__repr__().

  • Added test_coverage.sh.

  • Added extended test_equality() coverage.

  • Formatting improvements.

  • Improved constructor handling, which is now much more readable.

  • Updated formatting of the setup.py.

  • Added more tests.

  • Fixed #22; bug in the SpecialDict.

  • Fixed some nasty unicode problems.

  • Fixed python 2 / 3 problem in docs/__init__.py.

  • getVersion() -> get_version().

2.0.10

  • Added more tests of removeTags().

  • run_tests.sh now gets arguments.

  • Check for string in removeTags() changed to basestring from str.

2.0.6 - 2.0.9

  • Fixed behaviour of toString() and tagToString().

  • SpecialDict is now derived from OrderedDict.

  • Changed and added tests of .params attribute (OrderedDict is now used).

  • Fixed bug in _repair_tags().

  • Removed _repair_tags() - it wasn’t really necessary.

  • Fixed nasty bug which could cause invalid XML output.

2.0.1 - 2.0.5

  • Fixed bugs in .match().

  • Fixed broken links in documentation.

  • Fixed bugs in .isAlmostEqual().

  • .find(); Fixed bug which prevented tag_name to be None.

  • Added op .__eq__() to the SpecialDict.

  • Added new method .containsParamSubset() to HTMLElement.

2.0.0

  • Rewritten, refactored, splitted to multiple files.

  • Added unittest coverage of almost 100% of the code.

  • Added better selector methods (.wfind(), .match)

  • Added Sphinx documentation.

  • Fixed a lot of bugs.

Metadata

Release files for pyDHTMLParser 2.2.3

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

Source distribution (sdist)

Source distribution for pyDHTMLParser 2.2.3
File Size Uploaded
pyDHTMLParser-2.2.3.tar.gz 417.3 kB Details

Built distribution (wheel)

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

Total release size: 435.0 kB

Release files / pyDHTMLParser-2.2.3.tar.gz

Download URL pyDHTMLParser-2.2.3.tar.gz
Size 417.3 kB
Tags Source
SHA-256 checksum
How to use checksums
1fe4feabb5a2d8252f84208a99e35acbfc503e6392be45ead05d79aa73ae6d04
BLAKE2b-256 checksum
How to use checksums
c3d1cfbc93e2e69fbe9efb927d93adc0d06319a1af3f5748698834b2c2f75616
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Python-urllib/2.7

Release files / pyDHTMLParser-2.2.3-py3-none-any.whl

Download URL pyDHTMLParser-2.2.3-py3-none-any.whl
Size 17.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
46c5dd6e82378d81ba6e666902eea95ae611a113eaea7c9f91a47c454778ba37
BLAKE2b-256 checksum
How to use checksums
5b9f9d91e41eb7810483f67ee675241f538c6fba9badd9ef064886ec3997d9fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.9

Release history Release notifications | RSS feed

This release

2.2.3 This release

2 release files

2.2.2

1 release file

2.2.1

1 release file

2.2.0

1 release file

2.1.8

1 release file

2.1.7

1 release file

2.1.6

1 release file

2.1.5

1 release file

2.1.4

1 release file

2.1.3

1 release file

2.1.2

1 release file

2.1.1

1 release file

2.1.0

1 release file

2.0.10

1 release file

2.0.9

1 release file

2.0.8

1 release file

2.0.7

1 release file

2.0.6

1 release file

2.0.5

1 release file

2.0.4

1 release file

2.0.3

1 release file

2.0.2

1 release file

2.0.1

1 release file

2.0.0

1 release file

1.7.6

1 release file

1.7.5

1 release file

1.7.4

1 release file

1.7.2

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