Skip to main content
PyPI Version Supported Python Versions CI Status Coverage report Documentation Status

itemloaders is a library that helps you collect data from HTML and XML sources.

It comes in handy to extract data from web pages, as it supports data extraction using CSS and XPath Selectors.

It’s specially useful when you need to standardize the data from many sources. For example, it allows you to have all your casting and parsing rules in a single place.

Here is an example to get you started:

from itemloaders import ItemLoader
from parsel import Selector

html_data = '''
<!DOCTYPE html>
<html>
    <head>
        <title>Some random product page</title>
    </head>
    <body>
        <div class="product_name">Some random product page</div>
        <p id="price">$ 100.12</p>
    </body>
</html>
'''
loader = ItemLoader(selector=Selector(html_data))
loader.add_xpath('name', '//div[@class="product_name"]/text()')
loader.add_xpath('name', '//div[@class="product_title"]/text()')
loader.add_css('price', '#price::text')
loader.add_value('last_updated', 'today') # you can also use literal values
item = loader.load_item()
item
# {'name': ['Some random product page'], 'price': ['$ 100.12'], 'last_updated': ['today']}

For more information, check out the documentation.

Contributing

All contributions are welcome!

  • If you want to review some code, check open Pull Requests here

  • If you want to submit a code change

    • File an issue here, if there isn’t one yet

    • Fork this repository

    • Create a branch to work on your changes

    • Run pre-commit install to install pre-commit hooks

    • Push your local branch and submit a Pull Request

Metadata

Release files for itemloaders 1.3.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 itemloaders 1.3.0
File Size Uploaded
itemloaders-1.3.0.tar.gz 19.6 kB Details

Built distribution (wheel)

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

Total release size: 31.8 kB

Release files / itemloaders-1.3.0.tar.gz

Download URL itemloaders-1.3.0.tar.gz
Size 19.6 kB
Tags Source
SHA-256 checksum
How to use checksums
3868d7c2dfff918da96e8c50ee9de6e6295a591692f3aa9093ef290065fa1e63
BLAKE2b-256 checksum
How to use checksums
fcbc5f55261cd91637e191ca99857489ef8e43d09f66ba35f7953036eec6d37e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.3

Release files / itemloaders-1.3.0-py3-none-any.whl

Download URL itemloaders-1.3.0-py3-none-any.whl
Size 12.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e2912ae6f58c9c4276602e197b914b0ac468ea02897a973f636b1eb8377b6008
BLAKE2b-256 checksum
How to use checksums
a85aa3681442fb722590ec6606118acdb1b3953a4a99d3b06e78df56b9be3116
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

1.5.0

2 release files

1.4.0

2 release files

1.3.2

2 release files

1.3.1

2 release files

This release

1.3.0 This release

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.1

2 release files

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