Рубрики
Без рубрики

Страны данные

В течение последних нескольких месяцев я работал над большим проектом, в котором мне нужно было использовать список … с меткой программирования, JavaScript, Java, Python.

В течение последних нескольких месяцев я работал над крупным проектом, в котором мне нужно было использовать список стран как на английском, так и на арабском языке. На первый взгляд, я думал, что найти этот список будет легким, поскольку он будет выглядеть как общая проблема, верно? Но, к сожалению, это не так.

Большинство данных, которые я обнаружил, не были организованы должным образом, и было слишком сложно извлечь необходимые данные, не приложив огромные усилия.

Я решил использовать какой -то API, который уже имел эти данные, но я столкнулся с некоторыми проблемами. Большинство API предоставляют вам ограниченное количество запросов в месяц. Если вы хотите больше запросов, вы должны платить все больше и больше. К сожалению, свободные были надежны.

Несмотря на все это, у меня было две основные проблемы. Первый, у нас могут быть ситуации, в которых мы хотим связать некоторые данные с некоторыми странами в нашей базе данных с иностранными ключами. Таким образом, API не будут полезны, и я должен сохранить данные в базе данных. Для второго, все решения, которые я обнаружил, не предоставляли арабские данные.

Итак, я решил создать данные самостоятельно. С помощью Geonames публичные данные и с некоторыми дополнительными усилиями для перевода данных и добавления дополнительных полей, я создал amrsaeedhosny/ounts Репозиторий на GitHub.

Страновые данные

Каждая страна имеет следующие данные:

  • Английское имя.
  • Арабское имя.
  • ISO 3166-1 Альфа-2 код.
  • ISO 3166-1 Альфа-3 код.
  • Телефонный код.

Доступные форматы файлов

Данные стран хранятся в нескольких форматах файлов:

  • CSV:
20 مصر НАПРИМЕР Еги Египет
  • Json:
{
 "english_name": "Egypt",
 "arabic_name": "مصر",
 "alpha2_code": "EG",
 "alpha3_code": "EGY",
 "phone_code": "20"
}
  • SQL:
INSERT INTO COUNTRY (ENGLISH_NAME, ARABIC_NAME, ALPHA2_CODE, ALPHA3_CODE, PHONE_CODE) VALUES('Egypt', 'مصر', 'EG', 'EGY', '20');

Пользовательский формат файла

Существует также простой скрипт Python, который вы можете использовать для создания своего собственного формата файла:

import csv

my_file = open("my_file.txt", "w")

with open('countries.csv') as csv_file:
    csv_reader = csv.reader(csv_file)
    csv_reader.next()
    for row in csv_reader:
        for column in row:
            my_file.write(column + ",")
        my_file.write("\n")

my_file.close()

Теперь проблема была решена один раз, и я могу легко использовать данные, когда мне это нужно.

Достигнув этого, вы знаете, что можете использовать эти данные в своих собственных проектах. На самом деле, это был весь смысл этой статьи. Итак, наслаждайтесь!

Оригинал: “https://dev.to/amrsaeedhosny/countries-data-1i2b”