Друкарня від WE.UA

Генерація фейкових даних з Faker

У цій статті ми поговоримо про бібліотеку Faker, яка дозволяє генерувати фейкові дані. Ця бібліотека може бути корисною при тестуванні, заповненні баз даних і т. д.

Встановлення

Перед початком використання функцій даної бібліотеки її треба встановити. Команди для встановлення цієї бібліотеки для різних ОС наведені нижче.

Windows:

pip install faker

MacOS:

pip3 install faker

Linux:

pip install faker

Можливості бібліотеки

Тепер настав час розглянути можливості даної бібліотеки. Вона здатна генерувати великий спектр інформації і зараз ми поглянемо на реалізацію її функцій.

Функція

Опис

first_name()

Генерує випадкове ім’я

last_name()

Генерує випадкове прізвище

first_name_male()

Генерує випадкове чоловіче ім’я

first_name_female()

Генерує випадкове жіноче ім’я

last_name_male()

Генерує випадкове чоловіче прізвище

last_name_female()

Генерує випадкове жіноче прізвище

name()

Генерує ім’я та прізвище

country()

Генерує назву випадкової країни

city()

Генерує назву випадкового міста

text()

Генерує випадковий текст

email()

Генерує випадкову адресу електронної пошти

latitude()

Генерує випадкове значення широти

longitude()

Генерує випадкове значення довготи

url()

Генерує випадкову адресу сайту

address()

Генерує випадкову фізичну адресу проживаня

ipv4()

Генерує випадкову IP адресу версії 4

mac_adress()

Генерує випадкову мак адресу

Приклади застосування функцій

Приклад використання функцій first_name(), last_name(), first_name_male(), first_name_female(), name(), country(), city(), latitude(), longitude(), address(), ipv4(), mac_adress().

Тут ми спочатку імпортували бібліотеку, а далі створили об’єкт fake.

from faker import Faker

fake = Faker()

Створили функцію, яка генерує фейкові дані. Конкретно у цій функції ми згенерували ім’я та прізвище чоловічої особи:

def male_person_info():
    print("Ім'я:", fake.first_name_male())
    print("Прізвище:", fake.last_name_male())
    print("Країна:", fake.country())
    print("Місто:", fake.city())
    print("Адреса:", fake.address())
    print("Широта та довгота:", fake.latitude(), fake.longitude())
    print("IP адреса:", fake.ipv4())
    print("Mac адреса:", fake.mac_address())


male_person_info()

Отримали такий результат:

Ім'я: Brandon
Прізвище: Cannon
Країна: Egypt
Місто: Chelseafort
Адреса: 351 Martin Circle Suite 766
Joshuamouth, CT 11106
Широта та довгота: -43.8221095 -80.241553
IP адреса: 153.50.143.162
Mac адреса: 38:09:21:5f:3e:97

Тепер згенеруємо все тіж дані, але для жіночої особи. Для цього ми створили окрему функцію:

def female_person_info():
    print("Ім'я:", fake.first_name_female())
    print("Прізвище:", fake.last_name_female())
    print("Країна:", fake.country())
    print("Місто:", fake.city())
    print("Адреса:", fake.address())
    print("Широта та довгота:", fake.latitude(), fake.longitude())
    print("IP адреса:", fake.ipv4())
    print("Mac адреса:", fake.mac_address())


female_person_info()

У підсумку отримали такі дані:

Ім'я: Linda
Прізвище: Ramsey
Країна: Luxembourg
Місто: New Brianna
Адреса: 98035 Reyes Spring
Jennifermouth, VT 09997
Широта та довгота: -61.4782225 -56.086526
IP адреса: 145.77.94.128
Mac адреса: 16:0f:71:24:bb:4c

Також, як вже було зазначено раніше, можна просто генерувати ім’я та прізвище або одразу повне ім’я без прив’язки до конкретної статі завдяки тим же функціям first_name(), last_name(), name(). Нижче наведений черговий приклад:

print("Ім'я:", fake.first_name())
print("Прізвище:", fake.last_name())

print("Повне ім'я:", fake.name())

Результат:

Ім'я: Judy
Прізвище: Lopez

Повне ім'я: Todd Allen

Далі розглядаємо функції text(), email(), url(). Їх реалізацію можна побачити тут:

print(f"Текст: {fake.text()}\n"
      f"================================\n"
      f"Електронна пошта: {fake.email()}\n"
      f"Веб адреса: {fake.url()}")

Отриманий результат:

Текст: Available address miss. Especially for time nice rate find fire.
Tonight different dog operation box TV benefit add. Feeling owner three owner window enter show. Whatever what owner.
================================
Електронна пошта: [email protected]
Веб адреса: http://www.williams-williamson.com/

Тепер хочу показати одну особливість — у бібліотеці можна зробити локалізацію. Тобто щоб дані відображалися саме обраною нами мовою. Таким чином, передавши у Faker() в якості параметра строку “uk_UA“ ми отримаємо українську локалізацію. Це показано нижче:

from faker import Faker

fake = Faker("uk_UA")

Повернемося до наших функцій male_person_info() та female_person_info(), щоб поглянути на їх результати з українською локалізацією.

Ім'я: Євген
Прізвище: Артюшенко
Країна: Лесото
Місто: хутір Новоград-Волинський
Адреса: вулиця Палубний, буд. 8, Лубни, 23328
Широта та довгота: -24.4888925 105.932463
IP адреса: 138.15.83.170
Mac адреса: 66:a1:4d:81:8f:6f
Ім'я: Ірина
Прізвище: Аронець
Країна: Болівія
Місто: місто Білогірськ
Адреса: узвіз Мала Садова, буд. 635 кв. 6, Бучач, 54468
Широта та довгота: -80.961546 2.427819
IP адреса: 74.93.171.177
Mac адреса: 16:40:7d:18:29:a4

Як бачимо, дані відображаються на український лад.

На цьому все. Насправді ця бібліотека має набагато більше функцій, ніж я показав у цій статті. Сподіваюсь ця стаття сподобається вам! Якщо ви хочете читати більше матеріалу від мене — долучайтеся до мого телеграм каналу. Дякую за увагу!

Статті про вітчизняний бізнес та цікавих людей:

  • Вітаємо з Різдвом Христовим!

    Друкарня та платформа WE.UA вітають всіх наших читачів та авторів зі світлим святом Різдва! Зичимо всім українцям довгожданого миру, міцного здоровʼя, злагоди, родинного затишку та втілення всього доброго і прекрасного, чого вам побажали колядники!

    Теми цього довгочиту:

    Різдво
  • Каблучки – прикраси, які варто купувати

    Ювелірні вироби – це не тільки спосіб витратити гроші, але і зробити вигідні інвестиції. Бо вартість ювелірних виробів з кожним роком тільки зростає. Тому купуючи стильні прикраси, ви вигідно вкладаєте кошти.

    Теми цього довгочиту:

    Як Вибрати Каблучку
  • П'ять помилок у виборі домашнього текстилю, які псують комфорт сну

    Навіть ідеальний матрац не компенсує дискомфорт, якщо текстиль підібрано неправильно. Постільна білизна безпосередньо впливає на терморегуляцію, стан шкіри та глибину сну. Більшість проблем виникає не через низьку якість виробів, а через вибір матеріалів та подальшу експлуатацію

    Теми цього довгочиту:

    Домашній Текстиль
  • Як знайти житло в Києві

    Переїжджаєте до Києва і шукаєте житло? Дізнайтеся, як орендувати чи купити квартиру, перевірити власника та знайти варіанти, про які зазвичай не говорять.

    Теми цього довгочиту:

    Агентство Нерухомості
  • Як заохотити дитину до читання?

    Як залучити до читання сучасну молодь - поради та факти. Користь читання для дітей - основні переваги. Розвиток дітей - це наше майбутнє.

    Теми цього довгочиту:

    Читання
Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Mystique Lord
Mystique Lord@nocturnal_reader

Нічний читач

397Прочитань
21Автори
11Читачі
Підтримати
На Друкарні з 14 липня

Більше від автора

  • Гарне форматування з pprint

    Всіх вітаю! Сьогодні ми поговоримо про те, як зробити вивід програми гарним та зручним завдяки бібліотеці pprint у Python. Крім цього ми розберемо кожний параметр функції pprint() та подивомося на нього у дії.

    Теми цього довгочиту:

    Програмування
  • Скалярний, векторний та мішаний добутки у Python

    Всіх вітаю! Предметом обговорення у сьогоднішній статті будуть скалярний, векторний та мішаний добутки у Python за допомогою бібліотеки numpy. У цій статті ми розглянемо як реалізувати усі ці добуки через відповідний функціонал та дещо дізнаємося про їх суть.

    Теми цього довгочиту:

    Програмування
  • Обчислення статистичних показників даних про прогноз погоди у Python

    Всіх вітаю! У цьому матеріалі ми будемо візуалізувати значення максимальних та мінімальних прогнозованих значень температури на січень через бібліотеку plotly. Крім того, ми проведемо аналіз статистичних показників цих даних за допомогою вбудованого модуля statistics.

    Теми цього довгочиту:

    Програмування

Це також може зацікавити:

  • П'ять найпоширеніших міфів про CI/CD

    Розкриваємо 6 найпоширеніших міфів про CI/CD. Дізнайтеся, чому CI/CD не обмежує креативність розробників та може бути використаний навіть у старих проектах. Поглибіть знання про важливість автоматизації в розробці

    Теми цього довгочиту:

    Development
  • Майбутнє фронтенду — Пайтон?🤔

    PyWeb - фронтенд фреймворк, написаний на Пайтоні, мого авторства 🤓 Щоб запускати Пайтон в браузері використовується Pyodide та WebAssembly

    Теми цього довгочиту:

    Python
  • Все, що вам потрібно знати про вектори: від основ до застосувань

    Якщо щось незрозуміло, а це недивно,то звертайтися до мене в коменетарях! В НМТ майже нема завдань з векторами, проте ви маєте розуміти що таке коленіарність векторів, скалярний добуток, умови за яких вектори перпендикулярні та розуміння графіків

    Теми цього довгочиту:

    Математика

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити:

  • П'ять найпоширеніших міфів про CI/CD

    Розкриваємо 6 найпоширеніших міфів про CI/CD. Дізнайтеся, чому CI/CD не обмежує креативність розробників та може бути використаний навіть у старих проектах. Поглибіть знання про важливість автоматизації в розробці

    Теми цього довгочиту:

    Development
  • Майбутнє фронтенду — Пайтон?🤔

    PyWeb - фронтенд фреймворк, написаний на Пайтоні, мого авторства 🤓 Щоб запускати Пайтон в браузері використовується Pyodide та WebAssembly

    Теми цього довгочиту:

    Python
  • Все, що вам потрібно знати про вектори: від основ до застосувань

    Якщо щось незрозуміло, а це недивно,то звертайтися до мене в коменетарях! В НМТ майже нема завдань з векторами, проте ви маєте розуміти що таке коленіарність векторів, скалярний добуток, умови за яких вектори перпендикулярні та розуміння графіків

    Теми цього довгочиту:

    Математика