Added Indonesian identity card
parent
fce2e14f5d
commit
c697856fec
|
@ -0,0 +1,50 @@
|
|||
'''
|
||||
|
||||
This module generates Indonesian identity card
|
||||
|
||||
'''
|
||||
|
||||
from common import helpers
|
||||
import random,datetime
|
||||
|
||||
class Datatype:
|
||||
|
||||
def __init__(self, cli_object):
|
||||
self.cli = "ktp"
|
||||
self.description = "Indonesian Identity Card"
|
||||
self.filetype = "text"
|
||||
self.datasize = int(cli_object.data_size)
|
||||
|
||||
def generate_no_kk(self):
|
||||
return random.randint(100000,900000)
|
||||
|
||||
def generate_no_urut(self):
|
||||
rand_comp = random.randint(1,9999)
|
||||
return "%04d" % rand_comp
|
||||
|
||||
def generate_random_date(self):
|
||||
now = datetime.datetime.now()
|
||||
earliest = datetime.date(1945,1,1)
|
||||
latest = datetime.date((now.year-17),1,1)
|
||||
delta = latest - earliest
|
||||
|
||||
int_delta = (delta.days * 24 * 60 * 60) + delta.seconds
|
||||
random_second = random.randrange(int_delta)
|
||||
dtm = earliest + datetime.timedelta(seconds = random_second)
|
||||
|
||||
date = int(dtm.strftime('%d'))
|
||||
|
||||
if date % 2:
|
||||
return '{}{}'.format(date+40,dtm.strftime('%m%y'))
|
||||
else:
|
||||
return dtm.strftime('%d%m%y')
|
||||
|
||||
def generate_data(self):
|
||||
|
||||
print "[*] Generating data..."
|
||||
nik = ''
|
||||
|
||||
for single_ni in range(0, 100000 * self.datasize):
|
||||
nik += "{}{}{}".format(self.generate_no_kk(),self.generate_random_date(),self.generate_no_urut()) + ', '
|
||||
|
||||
return nik
|
Loading…
Reference in New Issue