Home
Softono

Web Poet

Open source BSD-3-Clause Python
107
Stars
20
Forks
33
Issues
5
Watchers
2 months
Last Commit

 About Web Poet

Web scraping Page Objects core library

Platforms

Web Self-hosted

Languages

Python

Need Help Installing Web Poet?

We provide expert installation service for this software. Our team will install, configure, and secure Web Poet on your server. plans start at just $30.

======== web-poet

.. image:: https://img.shields.io/pypi/v/web-poet.svg :target: https://pypi.python.org/pypi/web-poet :alt: PyPI Version

.. image:: https://img.shields.io/pypi/pyversions/web-poet.svg :target: https://pypi.python.org/pypi/web-poet :alt: Supported Python Versions

.. image:: https://github.com/scrapinghub/web-poet/actions/workflows/tests-ubuntu.yml/badge.svg :target: https://github.com/scrapinghub/web-poet/actions/workflows/tests-ubuntu.yml :alt: Tox Ubuntu

.. image:: https://github.com/scrapinghub/web-poet/actions/workflows/tests-windows.yml/badge.svg :target: https://github.com/scrapinghub/web-poet/actions/workflows/tests-windows.yml :alt: Tox Windows

.. image:: https://codecov.io/github/scrapinghub/web-poet/coverage.svg?branch=master :target: https://codecov.io/gh/scrapinghub/web-poet :alt: Coverage report

.. image:: https://readthedocs.org/projects/web-poet/badge/?version=stable :target: https://web-poet.readthedocs.io/en/stable/?badge=stable :alt: Documentation Status

.. intro starts

web-poet is a Python 3.10+ implementation of the page object pattern_ for web scraping. It enables writing portable, reusable web parsing code.

.. _page object pattern: https://martinfowler.com/bliki/PageObject.html

.. intro ends

See the documentation_.

.. _documentation: https://web-poet.readthedocs.io

Developing

Setup your local Python environment via:

  1. pip install -r requirements-dev.txt
  2. pre-commit install

Now everytime you perform a git commit, these tools will run against the staged files:

  • black
  • isort
  • flake8

You can also directly invoke pre-commit run --all-files or tox -e pre-commit to run them without performing a commit.