Faker es un paquete de Python que genera datos falsos para ti.
Instalación: Vínculo de ayuda
Abra el comando de solicitud de Anaconda para instalar:
conda install -c conda-forge faker
Importar paquete
from faker import Faker
Faker tiene la capacidad de imprimir/obtener una gran cantidad de datos falsos diferentes, por ejemplo, puede imprimir un nombre, dirección, correo electrónico, texto falso, etc.
Comandos falsos más utilizados
fake.name() fake.address() fake.email() fake.text() fake.country()
from faker import Faker fake = Faker() print (fake.email()) print(fake.country()) print(fake.name()) print(fake.text()) print(fake.latitude(), fake.longitude()) print(fake.url())
OUTPUT:(Different every time) vwilson@hotmail.com Belgium Shane Hunter Commodi vel libero placeat quibusdam odio odio consequatur. Ducimus libero quae optio non quidem. Facilis quas impedit quo. 26.5687745 -124.802165 http://www.turner.com/
Aplicación 1: Cree un json de 100 estudiantes con el nombre Students.json que contenga el nombre del estudiante, la dirección, las coordenadas de la ubicación y el número de registro del estudiante.
from faker import Faker # To create a json file import json # For student id from random import randint fake = Faker() def input_data(x): # dictionary student_data ={} for i in range(0, x): student_data[i]={} student_data[i]['id']= randint(1, 100) student_data[i]['name']= fake.name() student_data[i]['address']= fake.address() student_data[i]['latitude']= str(fake.latitude()) student_data[i]['longitude']= str(fake.longitude()) print(student_data) # dictionary dumped as json in a json file with open('students.json', 'w') as fp: json.dump(student_data, fp) def main(): # Enter number of students # For the above task make this 100 number_of_students = 10 input_data(number_of_students) main() # The folder or location where this python code # is save there a students.json will be created # having 10 students data.
OUTPUT {0: {'id': 20, 'name': 'Benjamin Washington', 'address': 'USCGC Garrison\nFPO AP 48025-9793', 'latitude': '-68.975800', 'longitude': '153.009590'}, 1: {'id': 2, 'name': 'Christopher Howell', 'address': '7778 Sarah Center Apt. 663\nLawrenceport, WY 78084', 'latitude': '-21.8141675', 'longitude': '-122.830387'}, 2: {'id': 67, 'name': 'Fernando Fuentes', 'address': '7756 Bradford Plain Suite 997\nEast Chelseaburgh, KY 75776', 'latitude': '-82.791227', 'longitude': '-42.964122'}, 3: {'id': 86, 'name': 'Patrick Torres', 'address': 'Unit 5217 Box 7477\nDPO AE 82354-0160', 'latitude': '34.949096', 'longitude': '121.715387'}, 4: {'id': 11, 'name': 'James Hines', 'address': '4567 Donald Grove\nWilliamhaven, MO 85891', 'latitude': '86.7208035', 'longitude': '-48.103935'}, 5: {'id': 33, 'name': 'James Miller', 'address': 'PSC 2613, Box 7165\nAPO AP 29256-6576', 'latitude': '-35.4630595', 'longitude': '-50.415667'}, 6: {'id': 76, 'name': 'Randall Fuller', 'address': '7731 Garcia Pike\nNew Eric, KS 20545', 'latitude': '12.198124', 'longitude': '126.720134'}, 7: {'id': 49, 'name': 'Ivan Franco', 'address': '801 Chambers Light\nWest Daniel, IA 17114-4374', 'latitude': '-58.2576055', 'longitude': '171.773233'}, 8: {'id': 75, 'name': 'Amy Smith', 'address': '995 Luna Stream Apt. 297\nThompsonchester, NY 82115', 'latitude': '80.4262245', 'longitude': '115.142004'}, 9: {'id': 38, 'name': 'Danielle Thomas', 'address': '7309 Chris Ferry Suite 674\nColebury, MA 39673-2967', 'latitude': '-73.340443', 'longitude': '-176.964241'}}
Aplicación 2: Imprima 10 nombres y países falsos en idioma hindi.
from faker import Faker #'hi_IN' changed the language fake = Faker('hi_IN') for i in range(0, 10): print('Name->', fake.name(), 'Country->', fake.country())
Aplicación 3: Crear perfil falso
import faker from Faker fake = Faker() print(fake.profile())
OUTPUT {'job': 'Town planner', 'company': 'Martinez-Clark', 'ssn': '559-93-0521', 'residence': '46820 Johnny Circles\nStokesside, IL 87065-2470', 'current_location': (Decimal('83.5271055'), Decimal('43.705455')), 'blood_group': 'A+', 'website': ['https://www.taylor.com/'], 'username': 'hsmith', 'name': 'Christopher Davis', 'sex': 'M', 'address': '335 Mcdaniel Fork Suite 589\nTeresabury, AZ 85283', 'mail': 'kenneth48@yahoo.com', 'birthdate': '1981-03-29'}
Aplicación 4: sembrar el generador obteniendo datos falsos particulares nuevamente.
La siembra da el mismo resultado de datos falsos que se generó en primera instancia en ese número de semilla.
Ejemplo
from faker import Faker fake = Faker() fake.seed(1) print(fake.name()) print(fake.address()) print(fake.email())
OUTPUT Ryan Gallagher 7631 Johnson Village Suite 690 Adamsbury, NC 50008 bparks@johnson.info
NOTA: Incluso si ejecuto el programa una y otra vez, obtendría el mismo resultado. Tan pronto como elimino esa línea fake.seed(1), vemos aleatoriedad en la generación de datos.
Aplicación 5: Imprima los datos de la lista que desee.
import faker from Faker fake = Faker() # Print random sentences print(fake.sentence()) # List has words that we want in our sentence word_list = ["GFG", "Geeksforgeeks", "shaurya", "says", "Gfg", "GEEKS"] # Let's print 5 sentences that # have words from our word_list for i in range(0, 5): # You need to use ext_word_list = listnameyoucreated print(fake.sentence(ext_word_list = word_list))
OUTPUT # This is the random sentence that is generated using # fake.sentence() Error architecto inventore aut. # These are the 5 sentence that contains words from # word_list we provided Shaurya shaurya GEEKS Geeksforgeeks. Gfg shaurya Geeksforgeeks GFG Gfg GFG. Geeksforgeeks Gfg says Geeksforgeeks GEEKS Gfg Gfg GFG. Geeksforgeeks shaurya GFG Geeksforgeeks Gfg GEEKS. Gfg Geeksforgeeks says GFG GEEKS says.
Resumen de lo que aprendimos de Faker
1. Generación de datos falsos como nombre, dirección, correo electrónico, texto, oración, etc.
2. Creación de un archivo JSON de datos falsos.
3. Se imprimen datos falsos en diferentes idiomas.
4. Crear perfil
5. Sembrar, es decir, imprimir datos falsos particulares
6. Generar una oración que contenga las palabras que proporcionamos.
Publicación traducida automáticamente
Artículo escrito por shaurya uppal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA