Skip to main content

A restcountries API wrapper for Flask Applications.

Project description

Codacy Badge Coverage Status Top language Code size GitHub PyPI PyPI - Python Version PyPI - Implementation PyPI - Status

Flask-RestCountries

Flask-RestCountries provides a simple intergration for restcountries.com API with Flask Applications.

Installation

Use the package manager pip to install flask-restcountries.

pip install Flask-RestCountries

Usage

from flask import Flask
from flask_restcountries import CountriesAPI

app = Flask(__name__)


rapi = CountriesAPI(app)

if you are using blueprints

from flask_restcountries import CountriesAPI
rapi = CountriesAPI()

rapi.init_app(app)

Usage in App

@app.route('/get-all')
def get_all_countries():
    """all_countries is a list of Country Objects"""
    all_countries = rapi.get_all()
    return render_template("example.html", all_countries=all_countries)

Other Useful Methods

Get Countries By Calling Code string of a country. E.g. '254'.

countries=rapi.get_countries_by_calling_code("+254")

Get a Country By Alpha code string of a country. E.g. 'ke'.

countries=rapi.get_country_by_country_code("ke")

Get Countries By Capital string of a country. E.g. 'Nairobi'

countries=rapi.get_countries_by_capital("Nairobi")

Get Countries By Currency string of a country. E.g. 'KES'.

countries=rapi.get_countries_by_currency("KES")

Get Countries By Language string of a country. E.g. 'sw'.

countries=rapi.get_countries_by_language("sw")

Get Countries By Name string of a country. E.g. 'Kenya'.

countries=rapi.get_countries_by_name("Kenya")

Get Countries By Region string of a country. E.g. 'Africa'.

countries=rapi.get_countries_by_region("Africa")

Get Countries By Subregion string of a country. E.g. 'Eastern Africa'

countries=rapi.get_countries_by_subregion("Eastern Africa")

Response Filtering

To make the response return only afew selected fields, you can filter the response by passing a list of field to be returned in the filters keyword as a kwarg to the methods above. ie:-

countries=rapi.get_countries_by_calling_code("+254",filters=["name","currencies","capital"])

Attributes that can be passed to the filters keyword

- topLevelDomain
- alpha2Code
- alpha3Code
- currencies
- capital
- callingCodes
- altSpellings
- relevance
- region
- subregion
- translations
- population
- latlng
- demonym
- area
- gini
- timezones
- borders
- nativeName
- name
- numericCode
- languages
- flag
- regionalBlocs
- cioc

Attributes of the Country object returned per each request

- top_level_domain
- alpha2_code
- alpha3_code
- currencies
- capital
- calling_codes
- alt_spellings
- relevance
- region
- subregion
- translations
- population
- latlng
- demonym
- area
- gini
- timezones
- borders
- native_name
- name
- numeric_code
- languages
- flag
- regional_blocs
- cioc

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

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

Flask-RestCountries-1.2.0.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

Flask_RestCountries-1.2.0-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file Flask-RestCountries-1.2.0.tar.gz.

File metadata

  • Download URL: Flask-RestCountries-1.2.0.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for Flask-RestCountries-1.2.0.tar.gz
Algorithm Hash digest
SHA256 a19cd9759670b1b97f1ef7f82d767a87af4f109509891f6d5e5cd82cd6715ae2
MD5 146bfc82d1ce88a56fc71d8c95f3cb1f
BLAKE2b-256 ed501e460361afed2824371501b66e551ae182d0b5e6e567a8d0fcdef50e761a

See more details on using hashes here.

File details

Details for the file Flask_RestCountries-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: Flask_RestCountries-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for Flask_RestCountries-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e7f8abda077a3217066072409f64301018fbbd763776290009b7aaa15d5988f5
MD5 8d69c12c19afe1f1317a8a8810a85007
BLAKE2b-256 1484c99ffcfd364aed9c9a8806bc785e5fe0a17c3089ad3c62a10d324d9210ec

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page