Skip to main content

PyWPS

PyWPS is an implementation of the Web Processing Service standard from the Open Geospatial Consortium. PyWPS is written in Python.

Documentation Status Build Status Coverage Status PyPI Conda GitHub license

Join the chat at https://gitter.im/geopython/pywps

License

As of PyWPS 4.0.0, PyWPS is released under an MIT license (see LICENSE.txt).

Dependencies

See pyproject.toml file

Install

Install it from GitHub:

$ git clone https://github.com/geopython/pywps.git
$ cd pywps/
$ pip install .

Run tests

pip install ".[dev]"
# run unit tests
python -m pytest tests
# run code coverage
python -m coverage run --source=pywps -m pytest
python -m coverage report -m

Quick Guide with Conda

Checkout source from GitHub:

$ git clone https://github.com/geopython/pywps.git
$ cd pywps/

Build conda environment:

conda env create -f environment.yml

Install pywps:

make install

Or the development version:

make develop

Run tests:

make tests

Run web application

Example service

Clone the example service after having installed PyWPS:

git clone git://github.com/geopython/pywps-flask.git pywps-flask
cd pywps-flask
python demo.py

Access example service: http://localhost:5000

Apache configuration

  1. Enable WSGI extension

  2. Add configuration:

    WSGIDaemonProcess pywps user=user group=group processes=2 threads=5
    WSGIScriptAlias /pywps /path/to/www/htdocs/wps/pywps.wsgi
    
    <Directory /path/to/www/htdocs/wps/>
        WSGIProcessGroup group
        WSGIApplicationGroup %{GLOBAL}
        Order deny,allow
        Allow from all
    </Directory>
    
  3. Create wsgi file:

    #!/usr/bin/env python3
    import sys
    sys.path.append('/path/to/src/pywps/')
    
    import pywps
    from pywps.app import Service, WPS, Process
    
    def pr1():
        """This is the execute method of the process
        """
        pass
    
    
    application = Service(processes=[Process(pr1)])
    
  4. Run via web browser

    http://localhost/pywps/?service=WPS&request=GetCapabilities&version=1.0.0

  5. Run in command line:

    curl 'http://localhost/pywps/?service=WPS&request=GetCapabilities&version=1.0.0'
    

Issues

On Windows PyWPS does not support multiprocessing which is used when making requests storing the response document and updating the status to displaying to the user the progression of a process.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pywps-4.8.0.tar.gz (87.2 kB view details)

Uploaded Source

Built Distribution

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

pywps-4.8.0-py3-none-any.whl (106.8 kB view details)

Uploaded Python 3

File details

Details for the file pywps-4.8.0.tar.gz.

File metadata

  • Download URL: pywps-4.8.0.tar.gz
  • Upload date:
  • Size: 87.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pywps-4.8.0.tar.gz
Algorithm Hash digest
SHA256 c535009b1e92ca2b7d14951d76308759db0c6149e1b1a2b7249e6bf667d86431
MD5 d9caf24f1fcfe20e783737cc413c76c9
BLAKE2b-256 9f3370369a314df75883547003ff95413707c6e581ba346cb860693141608cd2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pywps-4.8.0.tar.gz:

Publisher: publish-pypi.yml on geopython/pywps

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

File details

Details for the file pywps-4.8.0-py3-none-any.whl.

File metadata

  • Download URL: pywps-4.8.0-py3-none-any.whl
  • Upload date:
  • Size: 106.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pywps-4.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 01d795be625ce276c343b88b8d9b1153b6854a64955708d3f21e8f9ec318e6e2
MD5 324e3d9230f923cbbbd2d3ab4e84d052
BLAKE2b-256 038b85721cce304bcc8bfc332879f216a905bef252f06ec86907c1f1d3b8ef80

See more details on using hashes here.

Provenance

The following attestation bundles were made for pywps-4.8.0-py3-none-any.whl:

Publisher: publish-pypi.yml on geopython/pywps

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

Release history Release notifications | RSS feed

This release

4.8.0 This release

2 files

4.7.0

1 file

4.6.0

1 file

4.5.2

1 file

4.5.1

1 file

4.5.0

1 file

4.4.5

1 file

4.4.4

1 file

4.4.3

1 file

4.4.2

1 file

4.4.1

1 file

4.4.0

1 file

4.2.11

1 file

4.2.10

1 file

4.2.9

1 file

4.2.8

1 file

4.2.7

1 file

4.2.6

1 file

4.2.5

1 file

4.2.4

1 file

4.2.3

1 file

4.2.2

1 file

4.2.1

1 file

4.2.0

2 files

4.0.0

4 files

3.2.6

2 files

3.2.5

1 file

3.2.4

1 file

3.2.3

1 file

trunk

1 file

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