Apify API client for Python
Project description
Apify API client for Python
This is an official client for the Apify API. It's still a work in progress, so please don't use it yet in production environments!
Installation
Requires Python 3.7+
You can install the client from its PyPI listing.
To do that, simply run pip install apify-client
in your terminal.
Usage
For usage instructions, check the documentation on Apify Docs or in docs/docs.md
.
Development
Environment
For local development, it is required to have Python 3.7 installed.
It is recommended to set up a virtual environment while developing this package to isolate your development environment, however, due to the many varied ways Python can be installed and virtual environments can be set up, this is left up to the developers to do themselves.
One recommended way is with the builtin venv
module:
python3 -m venv .venv
source .venv/bin/activate
To improve on the experience, you can use pyenv to have an environment with a pinned Python version, and direnv to automatically activate/deactivate the environment when you enter/exit the project folder.
Dependencies
To install this package and its development dependencies, run pip install -e '.[dev]'
Formatting
We use autopep8
and isort
to automatically format the code to a common format. To run the formatting, just run ./format.sh
.
Linting and Testing
We use flake8
for linting, mypy
for type checking and pytest
for unit testing. To run these tools, just run ./lint_and_test.sh
.
Documentation
We use the Google docstring format for documenting the code. We document every user-facing class or method, and enforce that using the flake8-docstrings library.
The documentation is then rendered from the docstrings in the code using Sphinx and some heavy post-processing and saved as docs/docs.md
.
To generate the documentation, just run ./build_docs.sh
.
Release process
Publishing new versions to PyPI happens automatically through GitHub Actions.
On each commit to the master
branch, a new beta release is published, taking the version number from src/apify_client/_version.py
and automatically incrementing the beta version suffix by 1 from the last beta release published to PyPI.
A stable version is published when a new release is created using GitHub Releases, again taking the version number from src/apify_client/_version.py
. The built package assets are automatically uploaded to the GitHub release.
If there is already a stable version with the same version number as in src/apify_client/_version.py
published to PyPI, the publish process fails,
so don't forget to update the version number before releasing a new version.
The release process also fails when the released version is not described in CHANGELOG.md
,
so don't forget to describe the changes in the new version there.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file apify_client-0.6.0b4.tar.gz
.
File metadata
- Download URL: apify_client-0.6.0b4.tar.gz
- Upload date:
- Size: 33.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3bd301a353421870f62b70c96d3b352b160a5856e4e3e06eec94564dcd52e059 |
|
MD5 | 38059f1f1910bda017aca04f4722bc66 |
|
BLAKE2b-256 | 7371b6854383b8cf238b822ae2da6c0ad1b8d868a3ffebb5d8d7cc3bacceddf7 |
File details
Details for the file apify_client-0.6.0b4-py3-none-any.whl
.
File metadata
- Download URL: apify_client-0.6.0b4-py3-none-any.whl
- Upload date:
- Size: 55.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c7e6666e3e17d2a5954d87adb1e5170d48b81c8b1f9277519f340d6863ed38f1 |
|
MD5 | 86124aed4e46e56211fc4bf6c6c26dea |
|
BLAKE2b-256 | 67711fd5840004e6bf70da6b7f0cafe38095315fb7a5a420279f8ab54d062b25 |