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.2.tar.gz
(10.1 kB
view hashes)
Built Distribution
Close
Hashes for django_ok_17track-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 447b331b05afbfaa8bbef8ec53b12cddfcfb86a485ff03131bc8121f823335b3 |
|
MD5 | bca5c2599eb94c25dda99ac0f512f0a1 |
|
BLAKE2b-256 | b2a3b093bdd38573f2b7f26fbcbe62e43d476aa64144a7040adfd061e4971e07 |