async def country_info(update: Message): country = update.text.split(" ", 1)[1] country = CountryInfo(country) info = f"""--**Country Information**-- Name : `{country.name()}` Native Name : `{country.native_name()}` Capital : `{country.capital()}` Population : `{country.population()}` Region : `{country.region()}` Sub Region : `{country.subregion()}` Top Level Domains : `{country.tld()}` Calling Codes : `{country.calling_codes()}` Currencies : `{country.currencies()}` Residence : `{country.demonym()}` Timezone : `{country.timezones()}` Made by **@XD_Botz ❤️**""" country_name = country.name() country_name = country_name.replace(" ", "+") reply_markup = InlineKeyboardMarkup([[ InlineKeyboardButton('Wikipedia', url=f'{country.wiki()}'), InlineKeyboardButton( 'Google', url=f'https://www.google.com/search?q={country_name}') ]]) try: await update.reply_text(text=info, reply_markup=reply_markup, disable_web_page_preview=True, quote=True) except Exception as error: await update.reply_text(text=error, disable_web_page_preview=True, quote=True)
def user_geo(country_name="me"): if country_name == "me": code = geocoder.ip(country_name).country country = CountryInfo(code) else: country = CountryInfo(country_name) code = country.iso(2) capital = country.capital() name = country.name().capitalize() currency = country.currencies() return [code, name, capital, currency]
def country_info(country_name): d = [] country = CountryInfo(country_name) d.append(["name", country.name().capitalize()]) d.append(["capital", country.capital().capitalize()]) d.append(["region", country.region().capitalize()]) d.append(["currency", country.currencies()]) d.append(["area", country.area()]) d.append(["population", country.population()]) d.append(["languages", country.languages()]) d.append(["borders", country.borders()]) d.append(["calling code", country.calling_codes()]) d.append(["lat/long", country.capital_latlng()]) d.append(["code", country.iso(2)]) return d
def test_select_country_from_alt_name(self): country = CountryInfo('PK') assert country.name() == 'pakistan'