django-17track is an unofficial 17track.com API wrapper for Django.
Project description
django-17track is an unofficial 17track.com API wrapper for Django.
Installation
Install with pip:
$ pip install django-ok-17track
Update INSTALLED_APPS:
INSTALLED_APPS = [
...
'track17',
...
]
Make migrations
$ python manage.py migrate
Available settings
TRACK17_API_KEY - API key for service.
TRACK17_API_KEY_FUNCTION - Custom function to return API key, if you want to store it outside the Django settings.
TRACK17_COUNTRIES_URL - Url to grab countries. Uses https://www.17track.net/en/apicountry.
TRACK17_CARRIERS_URL - Url to grab carriers. Uses https://www.17track.net/en/apicarrier.
Basic example to use:
How to get all countries and carriers:
python managet.py populate_carriers
How to register tracking number and get it’s info:
from rest_framework import serializers from track17.services import register_track, get_track_info, get_track_info_as_packages from apps.track17.exceptions import DateProcessingError # try to register tracking number at 17track API try: register_track('tracking_number') except DateProcessingError as exc: raise serializers.ValidationError(str(exc)) # try to fetch an actual info about a tracking number try: response: Dict = get_track_info('tracking_number') except DateProcessingError as exc: raise serializers.ValidationError(str(exc)) accepted_packages = response.get('accepted', []) # return packages info as a list of `PackageEntity` (dataclass instance) objects # in a readable way with a represantion of carriers and countries as Django model instances packages = get_track_info_as_packages(accepted)
Or can use 17track adapter directly:
from track17.track17 import Track17Adapter track17 = Track17Adapter() response = track17.register('number1', 'number2') response = track17.get_track_info('number1', 'number2')
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
django-ok-17track-0.0.4.tar.gz
(10.3 kB
view hashes)
Built Distribution
Close
Hashes for django_ok_17track-0.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60ffe1b018c82b745a3703d849d5ceba4dea4224dcf66efce9370899daa7e369 |
|
MD5 | e4a7b0c5b62050d637e813479a9d2f7a |
|
BLAKE2b-256 | af356efd51d29f11f65622268a28d261dfef7e4bb538deb5b4548da13c2e4a2b |