Skip to main content

Extracts all text results from an XPath query on a parsel Selector object.

Project description

parsel_text

parsel_text

CI PyPI version Python versions License: MIT DeepWiki

parsel_text is a Python library designed to simplify the extraction of text data from HTML or XML documents using XPath queries on parsel Selector objects. It provides a straightforward interface to obtain and optionally fix mojibake (garbled text due to encoding issues).

Installation

To install parsel_text, use pip:

pip install parsel_text

DeepWiki Docs: https://deepwiki.com/carlosplanchon/parsel_text

Usage

Function: get_xpath_text

This is the main function of the library, designed to extract all text results from an XPath query on a parsel Selector object.

Parameters

  • parsel_sel (parsel.Selector): The parsel Selector object from which to extract text.
  • xpath (str): The XPath query string to specify the text extraction path.
  • fix_mojibake (bool, optional): A flag to indicate whether to fix mojibake issues in the extracted text. Default is True.

Returns

  • str: A string containing the concatenated text results from the specified XPath query.

Example

Here's a simple example of how to use the parsel_sel_get_text function:

from parsel import Selector
from parsel_text import get_xpath_text

html_content = """
<html>
  <body>
    <div id="content">
      <p>Hello, world!</p>
      <p>Welcome to the parsel_text library.</p>
    </div>
  </body>
</html>
"""

# Create a parsel Selector object
selector = Selector(text=html_content)

# Define the XPath query
xpath_query = "//div[@id='content']/p//text()"

# Extract text using the parsel_sel_get_text function
extracted_text = get_xpath_text(parsel_sel=selector, xpath=xpath_query)

print(extracted_text)

Output

Hello, world!
Welcome to the parsel_text library.

Contributing

Contributions are welcome! If you find a bug or have a feature request, please open an issue on the GitHub repository.

License

This project is licensed under the MIT License. See the LICENSE file for details.

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

parsel_text-2.0.0.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

parsel_text-2.0.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file parsel_text-2.0.0.tar.gz.

File metadata

  • Download URL: parsel_text-2.0.0.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for parsel_text-2.0.0.tar.gz
Algorithm Hash digest
SHA256 2b6ab0532ecc7f20c21d88ce0d859fe12f706b5bf445a0d2c530ad5018ee47c5
MD5 7f090e5a3e3ec37572b0605c22c5d285
BLAKE2b-256 ed8a052a880bf3b547c845ce83a8d6bca336c35152068a51b055f030a37ba6cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for parsel_text-2.0.0.tar.gz:

Publisher: release.yml on carlosplanchon/parsel_text

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file parsel_text-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: parsel_text-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for parsel_text-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 18c406cb0a50f0605d2c7e785e0be772ad49cc287707544ef6a9716865a285e4
MD5 2333cca8739e43b4b2c5b47910484bd9
BLAKE2b-256 8ac32a0ce2171d674d745def7469db30daec66429d3c449a33cf817872c5f7c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for parsel_text-2.0.0-py3-none-any.whl:

Publisher: release.yml on carlosplanchon/parsel_text

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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