Skip to content

Instantly share code, notes, and snippets.

@dajor
Last active February 11, 2020 10:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dajor/b81c8d30d6e9dc449458dd29517e90bc to your computer and use it in GitHub Desktop.
Save dajor/b81c8d30d6e9dc449458dd29517e90bc to your computer and use it in GitHub Desktop.
import csv
from faker import Faker
import datetime
def datagenerate(records, headers):
fake = Faker('de_DE')
fake1 = Faker('de_DE') # To generate phone numbers
with open("People_data_de.csv", 'wt') as csvFile:
writer = csv.DictWriter(csvFile, fieldnames=headers)
writer.writeheader()
for i in range(records):
full_name = fake.name()
FLname = full_name.split(" ")
Fname = FLname[0]
Lname = FLname[1]
domain_name = "@testDomain.com"
userId = Fname +"."+ Lname + domain_name
writer.writerow({
"Email Id" : userId,
"Prefix" : fake.prefix(),
"Name": fake.name(),
"Birth Date" : fake.date(pattern="%d-%m-%Y", end_datetime=datetime.date(2000, 1,1)),
"Phone Number" : fake1.phone_number(),
"Additional Email Id": fake.email(),
"Address" : fake.address(),
"Zip Code" : fake.postcode(),
"City" : fake.city(),
"State" : fake.state(),
"Country" : fake.country(),
"Year":fake.year(),
"Time": fake.time(),
"Link": fake.url(),
"Text": fake.word(),
})
if __name__ == '__main__':
records = 1000000
headers = ["Email Id", "Prefix", "Name", "Birth Date", "Phone Number", "Additional Email Id",
"Address", "Zip Code", "City","State", "Country", "Year", "Time", "Link", "Text"]
datagenerate(records, headers)
print("CSV generation complete!")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment