def __init__(self): self.person = Person(locale='zh') self.address = Address(locale='zh') self.code = Code() self.business = Business(locale='zh') self.text = Text(locale='zh') self.datetime = Datetime(locale='zh') self.file = File() self.path = Path() self.internet = Internet() self.structure = Structure()
def generate_menu_items(amount): date = Datetime() food = Food() business = Business() text = Text() code = Code() num = Numbers() model = "core.menuitem" items = [] count = 1 for _ in range(amount): fields = {"created": date.datetime(), "modified": date.datetime(), "title": food.dish()} fields["slug"] = f'{fields["title"].replace(" ", "-")}-{code.issn()}' fields["content"] = text.quote() fields["price"] = num.between(1, 100) fields["category"] = None fields["draft"] = False single = { "model": model, "pk": count, "fields": fields } count += 1 items.append(single) with open("menu.json", "w") as f: json.dump(items, f, cls=DjangoJSONEncoder)
def generate_card_info(n=2): res = [] en_text = Text('en') en_person = Person('en') en_business = Business('en') color_choice = Choice() for i in range(n): card = { 'title': en_text.title(), 'author': en_person.full_name(), 'expansion': en_text.word(), 'type': en_text.word(), 'colors': color_choice(items=['white', 'black', 'red', 'green', 'blue'], unique=True, length=2), 'lore_message': en_text.quote(), 'lore_author': en_person.full_name() } res.append(card) return res
def business(locale): """ :param locale: :return: """ return Business(locale)
class Company(Node): _business = Business() _address = Address() def __init__(self): self.__type = 'Company' self.id = uuid4() self.type = self._business.company_type() self.name = self._business.company() self.country = self._address.country()
def generate(): inserts = [] counter = 350 business = Business('en') address = Address('en') internet = Internet('en') for index in range(counter, 15000, 1): inserts.append( template.substitute(id=index, name=business.company().replace("'", "''"), address=address.address().replace("'", "''"), credit=random.randint(300, 1000000), website=internet.home_page().replace( "'", "''"))) inserts_file = open('result_scripts/customers.sql', 'w', encoding='utf-8') inserts_file.writelines('\n'.join(inserts)) inserts_file.close()
def generate_menu(): g = Food('et') b = Business('et') for _ in range(7): cat = MenuItemCategory() cat.title = g.dish() cat.save() for _ in range(10): m = MenuItem() m.title = g.dish() m.price = randint(2, 9) m.category = cat m.save()
class Transaction(Node): _datetime = Datetime() _business = Business() def __init__(self, sourceId: int, targetId: int): self.__type = "Transaction" self.source = sourceId self.target = targetId self.date = self._datetime.date(start=2000, end=2020) self.time = self._datetime.time() self.amount = random.randint(1, 10000) if random.random() < 0.8: self.currency = self._business.currency_iso_code() else: self.currency = None
class CSVData: def __init__(self): self.person = Person(locale='zh') self.address = Address(locale='zh') self.code = Code() self.business = Business(locale='zh') self.text = Text(locale='zh') self.datetime = Datetime(locale='zh') self.file = File() self.path = Path() self.internet = Internet() self.structure = Structure() def mime_data(self): # col1 = self.person.full_name() col1 = self.person.last_name() + self.person.first_name() col2 = self.address.city() col3 = self.address.street_name() col4 = self.address.calling_code() col5 = self.address.longitude() col6 = self.code.imei() col7 = self.business.company() col8 = self.text.hex_color() col9 = self.datetime.formatted_datetime() col10 = self.datetime.time() col11 = self.file.file_name() col12 = self.path.dev_dir() col13 = self.internet.ip_v4() col14 = self.internet.ip_v6() col15 = self.internet.home_page() col16 = self.internet.stock_image() col17 = self.internet.user_agent() col18 = self.internet.mac_address() col19 = self.person.email() col20 = self.person.telephone() col21 = self.code.issn() col22 = self.person.social_media_profile() col23 = self.structure.html() line = '\"{0}\", \"{1}\", \"{2}\", \"{3}\", {4}, \"{5}\", \"{6}\" , \"{7}\" , \"{8}\" , \"{9}\" , \"{10}\" , \"{11}\" , \"{12}\" , \"{13}\" , \"{14}\" , \"{15}\" , \"{16}\" , \"{17}\" , \"{18}\" , \"{19}\" , \"{20}\" , \"{21}\" , \"{22}\"\n'.format( col1, col2, col3, col4, col5, col6, col7, col8, col9, col10, col11, col12, col13, col14, col15, col16, col17, col18, col19, col20, col21, col22, col23) # line = "mime data" # print(line) return line
def main(): cursor, co = db_connection('fee_test', 'postgres', 'password', host='localhost') sql_quaries(create_table_customer, cursor) sql_quaries(create_table_branch, cursor) # print(create_table_branch) for i in range(1, 21): b = Business().company() sql_insert(INSERT.format(b, b), cursor) co.commit() for i in range(100): a = Address('en').address() + " " + Address( 'en').zip_code() + " " + Address('en').state() sql_insert(INSERT_ADDRESS.format(a, random.randint(1, 20)), cursor) co.commit()
def bootstrap(count): from mimesis import Business, Datetime for _ in range(count): title = str(_) city = choice(CITIES) category = choice(CATEGORIES) company = Business('en').company() date_published = datetime.strptime( Datetime('uk').date(start=2013, end=2017, fmt=''), "%d.%m.%Y") vacancy = { "title": title, "city": city, "company": company, "category": category, "date_published": date_published } db.vacancy_collection.insert(vacancy)
def generate(): inserts = [] counter = 330 person = Person('en') business = Business('en') address = Address('en') internet = Internet('en') for index in range(counter, 15000, 1): inserts.append(template.substitute(id=index, name=person.name().replace("'", "''"), surname=person.surname().replace("'", "''"), email=person.email().replace("'", "''"), phone=person.telephone(), customer_id=random.randint(330, 14999) )) inserts_file = open('result_scripts/contacts.sql', 'w', encoding='utf-8') inserts_file.writelines('\n'.join(inserts)) inserts_file.close()
class Transaction(Node): _datetime = Datetime() _numbers = Numbers() _text = Text() _business = Business() def __init__(self, sourceId, targetId): self.__type = 'Transaction' self.id = uuid4() self.source = sourceId self.target = targetId self.date = self._datetime.date(start=2015, end=2019) self.time = self._datetime.time() if random() < 0.05: self.amount = self._numbers.between(100000, 1000000) self.amount = npr.exponential(10) if random() < 0.15: self.currency = self._business.currency_iso_code() else: self.currency = None
from datetime import datetime as py_datetime from datetime import timedelta from mimesis import Address, Business, Datetime, Internet, Numbers, Person, Text, random person = Person() addr = Address() number = Numbers() business = Business() datetime = Datetime() internet = Internet() random = random.Random() text = Text() date_format = "%Y-%m-%d" def generate_car_data(): return dict(registration_number=generate_car_registration_code(), color=generate_car_color()) def generate_car_registration_code(): return random.custom_code(mask="@@-####") def generate_car_color(): return text.color() def generate_rent_data(car_id=None):
def _business(self): return Business()
def _business(): return Business()
def fake_cmpd(self, ps, okz, laresult, nkresult, rsresult, ocresult, tfresult): #### FAKE COMPANY DATA ### # person = Person('ru') # full_name = person.full_name() # ruspec = RussiaSpecProvider() # e_otch_ul = ruspec.patronymic() # e_name_ul, e_fam_ul = full_name.split(" ")[-2:] ########################## def morph_items(sentence): # get GENT + DATV from sentence arr_split = sentence.split(" ") datv = [] gent = [] for item in arr_split: parsed = self.morph.parse(item)[0] g = parsed.inflect({'gent'}) d = parsed.inflect({'datv'}) if g: gent.append(g.word) datv.append(d.word) else: gent.append(item) datv.append(item) gent_join = " ".join(gent) datv_join = " ".join(datv) return {'gent' : gent_join, 'datv' : datv_join} #check if jobtitle CEO try: codeokz = okz[0].codeokz except: codeokz = "Не указан" ceo = False if codeokz[0] == "1": ceo = True responsibledeveloper = ps[0].responsibledeveloper developer = "The Enfield Cycle Company Limited" if responsibledeveloper: developer = responsibledeveloper.split(",")[0] head = ps[0].head headname = ps[0].headname e_fam_ul, e_name_ul, e_otch_ul = 'Пушкин','Александр','Сергеевич' if headname: try: e_fam_ul, e_name_ul, e_otch_ul = headname.split(" ") except: e_fam_ul, e_name_ul, e_otch_ul = 'Пушкин','Александр','Сергеевич' e_director = 'Генеральный директор' e_director_gent = 'Генерального директора' e_director_datv = 'Генеральному директору' if head: e_director = head morph_item = morph_items(head) e_director_gent = morph_item['gent'] e_director_datv = morph_item['datv'] def get_init_words(attr, arr): init_words = [ x[attr] for x in arr] raw_words = [] for sentense in init_words: cleared = re.sub(r'[^\w]', ' ', sentense) splitted = cleared.strip().split(" ") raw_words += splitted cleared_from_empty = [x.lower() for x in raw_words if not x == ''] adjective = [] for word in cleared_from_empty: init_word = self.morph.parse(word)[0] if init_word.tag.POS == 'ADJF': adjective.append(init_word.normalized) if adjective == []: return [self.morph.parse('Новые')[0],] return adjective all_words =( get_init_words('nametf', tfresult) ) def gen_depname_data(word_arr): randomchoise_first = word_arr[0]#random.choice(word_arr) first_word = randomchoise_first.inflect({'plur'}).word return first_word.capitalize() + ' технологии' business = Business('ru') # e_name = business.company().replace('«', '').replace('»', '') # for fake data e_name = developer depname = gen_depname_data(all_words) # e_op_form = business.company_type(abbr=True) # fake data cheef = 'Начальник' cheef_name = 'Иванов' cheef_otch = 'Иван' cheef_fam = 'Петрович' d_cheef_datv = 'Начальнику' cmpd = { 'e_name' : e_name, # 'e_op_form' : e_op_form, 'e_director' : e_director, 'e_fam_ul' : e_fam_ul, 'e_name_ul' : e_name_ul, 'e_otch_ul' : e_otch_ul, 'e_director_gent' : e_director_gent, 'e_director_datv' : e_director_datv, 'depname' : depname, 'cheef' : cheef, 'cheef_name' : cheef_name, 'cheef_otch' : cheef_otch, 'cheef_fam' : cheef_fam, 'd_cheef_datv' : d_cheef_datv, 'ceo': ceo } return cmpd
def ii_push_record(self, in_record: object) -> bool: """ Responsible for pushing records out. Called when an input record is being sent to the plugin. :param in_record: The data for the incoming record. :return: False if there's a downstream error, or if there's an error with the field name, otherwise True. """ if not self.parent.is_initialized: return False #create the new fields record_value = None for field in enumerate(self.record_info_out): if field[1].name == 'number_float': mimesis_object = Numbers() record_value = str( mimesis_object.float_number(end=10000, precision=6)) if field[1].name == 'number_float_positive': mimesis_object = Numbers() record_value = str( mimesis_object.float_number(start=0, end=10000, precision=6)) if field[1].name == 'number_int': mimesis_object = Numbers() record_value = str( mimesis_object.integer_number(start=-32767, end=32767)) if field[1].name == 'number_int_positive': mimesis_object = Numbers() record_value = str( mimesis_object.integer_number(start=0, end=32767)) if field[1].name == 'address_street_address': mimesis_object = Address(self.Locale) record_value = mimesis_object.address() if field[1].name == 'address_coordinates': mimesis_object = Address(self.Locale) record_value = str(mimesis_object.coordinates()) if field[1].name == 'address_country': mimesis_object = Address(self.Locale) record_value = mimesis_object.country(allow_random=True) if field[1].name == 'address_postal_code': mimesis_object = Address(self.Locale) record_value = mimesis_object.postal_code() if field[1].name == 'code_imei': mimesis_object = Code() record_value = mimesis_object.imei() if field[1].name == 'code_isbn': mimesis_object = Code() record_value = mimesis_object.isbn() if field[1].name == 'code_pin': mimesis_object = Code() record_value = mimesis_object.pin() if field[1].name == 'food_dish': mimesis_object = Food(self.Locale) record_value = mimesis_object.dish() if field[1].name == 'food_fruit': mimesis_object = Food(self.Locale) record_value = mimesis_object.fruit() if field[1].name == 'food_vegetables': mimesis_object = Food(self.Locale) record_value = mimesis_object.vegetable() if field[1].name == 'internet_url': mimesis_object = Internet() record_value = mimesis_object.home_page() if field[1].name == 'internet_ipv4': mimesis_object = Internet() record_value = mimesis_object.ip_v4() if field[1].name == 'internet_mac': mimesis_object = Internet() record_value = mimesis_object.mac_address() if field[1].name == 'person_blood_type': mimesis_object = Person(self.Locale) record_value = mimesis_object.blood_type() if field[1].name == 'person_email': mimesis_object = Person(self.Locale) record_value = mimesis_object.email() if field[1].name == 'person_full_name': mimesis_object = Person(self.Locale) record_value = mimesis_object.full_name() if field[1].name == 'person_nationality': mimesis_object = Person(self.Locale) record_value = mimesis_object.nationality() if field[1].name == 'person_occupation': mimesis_object = Person(self.Locale) record_value = mimesis_object.occupation() if field[1].name == 'person_telephone': mimesis_object = Person(self.Locale) record_value = mimesis_object.telephone() if field[1].name == 'science_atomic_number': mimesis_object = Science(self.Locale) record_value = str(mimesis_object.atomic_number()) if field[1].name == 'science_chemical_element': mimesis_object = Science(self.Locale) record_value = mimesis_object.chemical_element() if field[1].name == 'transport_airplane': mimesis_object = Transport() record_value = mimesis_object.airplane() if field[1].name == 'transport_car': mimesis_object = Transport() record_value = mimesis_object.car() if field[1].name == 'transport_truck': mimesis_object = Transport() record_value = mimesis_object.truck() if field[1].name == 'transport_vehicle_reg_code': mimesis_object = Transport() record_value = mimesis_object.vehicle_registration_code() if field[1].name == 'business_company_name': mimesis_object = Business() record_value = mimesis_object.company() if field[1].name == 'business_company_type': mimesis_object = Business() record_value = mimesis_object.company_type() if field[1].name == 'file_filename': mimesis_object = File() record_value = mimesis_object.file_name() if field[1].name == 'file_file_extension': mimesis_object = File() record_value = mimesis_object.extension() if field[1].name == 'file_mime_type': mimesis_object = File() record_value = mimesis_object.mime_type() if field[1].name == 'file_size': mimesis_object = File() record_value = mimesis_object.size() self.record_info_out[field[0]].set_from_string( self.record_creator, record_value) out_record = self.record_creator.finalize_record() #self.parent.output_anchor.push_record(out_record, False) self.record_creator.reset() # Copy the data from the incoming record into the outgoing record. self.record_creator.reset() self.record_copier.done_adding() self.record_copier.copy(self.record_creator, in_record) # Push the record downstream and quit if there's a downstream error. if not self.parent.output_anchor.push_record(out_record): return False return True
def pi_push_all_records(self, n_record_limit: int) -> bool: """ Called when a tool has no incoming data connection. :param n_record_limit: Set it to <0 for no limit, 0 for no records, and >0 to specify the number of records. :return: True for success, False for failure. """ if not self.is_initialized: return False # Save a reference to the RecordInfo passed into this function in the global namespace, so we can access it later. record_info_out = Sdk.RecordInfo(self.alteryx_engine) # Adds the new field to the record. for field in self.column_name: self.output_field = record_info_out.add_field(field, self.output_type, size=self.field_size) # Lets the downstream tools know what the outgoing record metadata will look like, based on record_info_out. self.output_anchor.init(record_info_out) # Creating a new, empty record creator based on record_info_out's record layout. record_creator = record_info_out.construct_record_creator() #import pdb; pdb.set_trace() #sophs code: for record in range(self.record_limit): for field in enumerate(record_info_out): if field[1].name == 'number_float': mimesis_object = Numbers() record_value = str( mimesis_object.float_number(end=10000, precision=6)) if field[1].name == 'number_float_positive': mimesis_object = Numbers() record_value = str( mimesis_object.float_number(start=0, end=10000, precision=6)) if field[1].name == 'number_int': mimesis_object = Numbers() record_value = str( mimesis_object.integer_number(start=-32767, end=32767)) if field[1].name == 'number_int_positive': mimesis_object = Numbers() record_value = str( mimesis_object.integer_number(start=0, end=32767)) if field[1].name == 'address_street_address': mimesis_object = Address(self.Locale) record_value = mimesis_object.address() if field[1].name == 'address_coordinates': mimesis_object = Address(self.Locale) record_value = str(mimesis_object.coordinates()) if field[1].name == 'address_country': mimesis_object = Address(self.Locale) record_value = mimesis_object.country(allow_random=True) if field[1].name == 'address_postal_code': mimesis_object = Address(self.Locale) record_value = mimesis_object.postal_code() if field[1].name == 'code_imei': mimesis_object = Code() record_value = mimesis_object.imei() if field[1].name == 'code_isbn': mimesis_object = Code() record_value = mimesis_object.isbn() if field[1].name == 'code_pin': mimesis_object = Code() record_value = mimesis_object.pin() if field[1].name == 'food_dish': mimesis_object = Food(self.Locale) record_value = mimesis_object.dish() if field[1].name == 'food_fruit': mimesis_object = Food(self.Locale) record_value = mimesis_object.fruit() if field[1].name == 'food_vegetables': mimesis_object = Food(self.Locale) record_value = mimesis_object.vegetable() if field[1].name == 'internet_url': mimesis_object = Internet() record_value = mimesis_object.home_page() if field[1].name == 'internet_ipv4': mimesis_object = Internet() record_value = mimesis_object.ip_v4() if field[1].name == 'internet_mac': mimesis_object = Internet() record_value = mimesis_object.mac_address() if field[1].name == 'person_blood_type': mimesis_object = Person(self.Locale) record_value = mimesis_object.blood_type() if field[1].name == 'person_email': mimesis_object = Person(self.Locale) record_value = mimesis_object.email() if field[1].name == 'person_full_name': mimesis_object = Person(self.Locale) record_value = mimesis_object.full_name() if field[1].name == 'person_nationality': mimesis_object = Person(self.Locale) record_value = mimesis_object.nationality() if field[1].name == 'person_occupation': mimesis_object = Person(self.Locale) record_value = mimesis_object.occupation() if field[1].name == 'person_telephone': mimesis_object = Person(self.Locale) record_value = mimesis_object.telephone() if field[1].name == 'science_atomic_number': mimesis_object = Science(self.Locale) record_value = str(mimesis_object.atomic_number()) if field[1].name == 'science_chemical_element': mimesis_object = Science(self.Locale) record_value = mimesis_object.chemical_element() if field[1].name == 'transport_airplane': mimesis_object = Transport() record_value = mimesis_object.airplane() if field[1].name == 'transport_car': mimesis_object = Transport() record_value = mimesis_object.car() if field[1].name == 'transport_truck': mimesis_object = Transport() record_value = mimesis_object.truck() if field[1].name == 'transport_vehicle_reg_code': mimesis_object = Transport() record_value = mimesis_object.vehicle_registration_code() if field[1].name == 'business_company_name': mimesis_object = Business() record_value = mimesis_object.company() if field[1].name == 'business_company_type': mimesis_object = Business() record_value = mimesis_object.company_type() if field[1].name == 'file_filename': mimesis_object = File() record_value = mimesis_object.file_name() if field[1].name == 'file_file_extension': mimesis_object = File() record_value = mimesis_object.extension() if field[1].name == 'file_mime_type': mimesis_object = File() record_value = mimesis_object.mime_type() if field[1].name == 'file_size': mimesis_object = File() record_value = mimesis_object.size() record_info_out[field[0]].set_from_string( record_creator, record_value) out_record = record_creator.finalize_record() self.output_anchor.push_record(out_record, False) record_creator.reset() # Make sure that the output anchor is closed. self.output_anchor.close() return True
def generatorStr(columns, numbOfEl): # двумерный массив: название столбца, тип arrDictGenerator = [] strNew = [] for j in range(0, numbOfEl): dictGenerator = {} marqModel = ['', ''] for i in range(1, len(columns)): if columns[i][0] == 'sex': if 'sex' not in dictGenerator: data = generatorGender() dictGenerator[i] = data if columns[i][0] == 'last_name': if 'sex' in dictGenerator: gender = dictGenerator.get('sex') else: gender = generatorGender() dictGenerator['sex'] = gender dictGenerator['last_name'] = generatorLastName(gender) if columns[i][0] == 'first_name': if 'sex' in dictGenerator: gender = dictGenerator.get('sex') else: gender = generatorGender() dictGenerator['sex'] = gender dictGenerator['first_name'] = generatorFirstName(gender) if columns[i][0] == ('OGRN'): r = rsp() data = r.ogrn() dictGenerator['OGRN'] = data if columns[i][0] == 'marque' and 'model' not in dictGenerator: dictGenerator['marque'] = '0' elif columns[i][0] == 'marque' and 'model' in dictGenerator and marqModel == ['', '']: tr = Transport() carStr = tr.car() carArr = carStr.split(' ') dictGenerator['marque'] = carArr[0] marqModel[0] = carArr[0] if len(carArr) > 2: strCar = '' for i in range(1, len(carArr)): strCar += str(i) marqModel[1] = strCar elif len(carArr) < 2: marqModel[1] = '' else: marqModel[1] = carArr[1] elif columns[i][0] == 'marque' and 'model' in dictGenerator and marqModel != ['','']: dictGenerator['marque'] = marqModel[0] if columns[i][0] == 'model' and 'marque' not in dictGenerator: dictGenerator['model'] = '0' elif columns[i][0] == 'model' and 'marque' in dictGenerator and marqModel == ['','']: tr = Transport() carStr = tr.car() carArr = carStr.split(' ') marqModel[0] = carArr[0] if len(carArr) > 2: strCar = '' for i in range(1, len(carArr)): strCar += str(i) marqModel[1] = strCar elif len(carArr) < 2: marqModel[1] = '' else: marqModel[1] = carArr[1] dictGenerator['model'] = marqModel[1] if dictGenerator['marque'] == '0': dictGenerator['marque'] = marqModel[0] elif columns[i][0] == 'model' and 'marque' in dictGenerator and marqModel != ['','']: if dictGenerator['marque'] == '0': dictGenerator['marque'] = marqModel[0] dictGenerator['model'] = marqModel[1] if columns[i][0] == 'name': comp = Business() dictGenerator['name'] = comp.company() if columns[i][0] == 'deal_date': dictGenerator['deal_date'] = generatorDate() if columns[i][0] == 'city': addr = Address() dictGenerator['city'] = addr.city() if columns[i][0] == 'transmission': dictGenerator['transmission'] = generatorTrans() if columns[i][0] == 'engine': dictGenerator['engine'] = generatorEngine() if columns[i][0] == 'color': dictGenerator['color'] = generatorColor() if columns[i][0] == 'VIN': vin = generatorVIN() dictGenerator['VIN'] = vin if columns[i][0] == 'kilometrage': dictGenerator[columns[i][0]] = random.randrange(5000, 150000, 5000) if columns[i][0] == 'salary': dictGenerator[columns[i][0]] = random.randrange(1000, 6000, 100) if columns[i][0] == 'power': dictGenerator[columns[i][0]] = random.randrange(130, 220, 10) if columns[i][0] == 'price': dictGenerator[columns[i][0]] = random.randrange(1300, 40000, 1000) if columns[i][1] == 'int' and columns[i][0] not in dictGenerator: dictGenerator[columns[i][0]] = 0 if columns[i][1] == 'tinyint': dictGenerator[columns[i][0]] = 0 if columns[i][1] == 'varchar(255)' and columns[i][0] not in dictGenerator: colstr = '' for j in (0, 12): colstr += random.choice(string.ascii_letters) dictGenerator[columns[i][0]] = colstr arrDictGenerator.append(dictGenerator) #print(dictGenerator) return arrDictGenerator
# 自定义名字pattern templates = ['l-d', 'U-d'] for item in templates: print(person.username(template=item)) print('\n') print('#' * 5 + '地址' + '#' * 5) address = Address('zh') print(address.coordinates()) print(address.city()) print('\n') print('#' * 5 + '地址' + '#' * 5) business = Business('zh') print(business.company()) print(business.company_type()) print('\n') print('#' * 5 + '支付' + '#' * 5) payment = Payment('zh') print(payment.paypal()) print(payment.credit_card_expiration_date()) print('\n') print('#' * 5 + '文字' + '#' * 5) text = Text('zh') print(text.alphabet()) print(text.answer()) print(text.quote())
def _generate_organization_data(locale='ru') -> dict: business = Business(locale) return { 'id': uuid.uuid4(), 'name': business.company(), }
def new_data_contragent(self, role, type_company): bik = ["044525225", "044525187", "044525593"] extra = (b.RussiaSpecProvider, ) data_company = Field(locales.RU, providers=extra) new_user = { "login": Person(locales.RU).username(), "password": "******", "user_mail": Person(locales.RU).email(), "first_name_user": Person(locales.RU).name(Gender.MALE), "last_name_user": Person(locales.RU).last_name(Gender.MALE), "job_user": Person('ru').occupation(), "user_phone": Person('ru').telephone('8##########'), "resident": 1, "role": role, "type_company": type_company, "name_company": Business(locales.RU).company_type() + ' \"' + Business(locales.RU).company() + '\"', "name_IP": "Индивидуальный предприниматель " + Person('ru').full_name(Gender.MALE), "inn": data_company('inn'), "kpp": data_company('kpp'), "ogrn": data_company('ogrn'), "general_email": Person(locales.EN).email(), "general_phone": Person('ru').telephone('7##########'), "index": Address('ru').postal_code(), "region": "Москва", "city": Address('ru').city(), "street": Address('ru').street_suffix() + " " + Address('ru').street_name(), "house": Address('ru').street_number(), "last_name": Person(locales.RU).last_name(Gender.FEMALE), "first_name": Person(locales.RU).name(Gender.FEMALE), "middle_name": Person(locales.RU).name(Gender.FEMALE), "job": Person('ru').occupation(), "bank_account": "30101810400000000225", "bik": bik[random.randint(0, 2)] } return new_user
def new_data_contragent_SNG(self, role, type_company): extra = (b.RussiaSpecProvider, ) data_company = Field(locales.RU, providers=extra) new_user_SNG = { "login": Person(locales.RU).username(), "password": "******", "user_mail": Person(locales.RU).email(), "first_name_user": Person(locales.RU).name(Gender.MALE), "last_name_user": Person(locales.RU).last_name(Gender.MALE), "job_user": Person('ru').occupation(), "user_phone": Person('ru').telephone('8##########'), "resident": 2, "role": role, "type_company": type_company, "name_company": Business(locales.RU).company_type() + ' \"' + Business(locales.RU).company() + '\"', "register_number": data_company('kpp'), "tin": data_company('snils'), "inn": data_company('inn'), "general_email": Person(locales.EN).email(), "general_phone": Person('ru').telephone('7##########'), "country": "Беларусь", "index": Address('ru').postal_code(), "region": "Минск", "city": Address('ru').city(), "street": Address('ru').street_suffix() + " " + Address('ru').street_name(), "house": Address('ru').street_number(), "last_name": Person(locales.RU).last_name(Gender.FEMALE), "first_name": Person(locales.RU).name(Gender.FEMALE), "middle_name": Person(locales.RU).name(Gender.FEMALE), "job": Person('ru').occupation(), "bank_account": Code().imei(), "iban": Code().ean(), "bank_name": "Sberbank_Belarus", "bank_swift": "SABRRUMM" } return new_user_SNG
def createData(num): # authors for i in range(random.randint(num // 4, num * 4)): authors.append({"name": Person().full_name()}) # publisher for i in range(random.randint(num // 4, num * 4)): publisher.append({"name": Business().company()}) # tag for i in range(random.randint(num // 4, num * 4)): tags.append({"value": Text().word()}) # users for i in range(random.randint(num // 4, num)): users.append({ "name": Person().full_name(), "password": Person().password(), "username": Person().username(), "email": Person().email(), "usertype": random.choice(ut), }) # messages for i in range(random.randint(num // 2, num * 8)): messages.append({ "text": Text().sentence(), "user_id": Numbers().between(minimum=1, maximum=len(users)), "timestamp": Datetime().datetime(start=2016, end=2018) }) # books for i in range(random.randint(num // 4, num * 4)): if random.random() < 0.4: books.append({ "pages": Numbers().between(minimum=100, maximum=1000), "title": Text().quote(), "year": Datetime().year(minimum=2013, maximum=2018), "isbn": Code().isbn(), "adddate": Datetime().date(start=2013, end=2018), # "issuetime": "NULL", "publisher_id": Numbers().between(minimum=1, maximum=len(publisher)), # "user_id": "NULL" }) else: opendate = Datetime().year(minimum=2013, maximum=2018) adddate = Datetime().date(start=opendate, end=2018) books.append({ "pages": Numbers().between(minimum=100, maximum=1000), "title": Text().quote(), "year": opendate, "isbn": Code().isbn(), "adddate": adddate, "issuetime": Datetime().datetime(start=adddate.year, end=2018), "publisher_id": Numbers().between(minimum=1, maximum=len(publisher)), "user_id": Numbers().between(minimum=1, maximum=len(users)) }) # Periodical for i in range(random.randint(num // 4, num * 4)): if random.random() < 0.4: periodicals.append({ "title": Text().quote(), "year": Datetime().year(minimum=2013, maximum=2018), "isbn": Code().isbn(), "adddate": Datetime().date(start=2013, end=2018), # "issuetime": "NULL", "publisher_id": Numbers().between(minimum=1, maximum=len(publisher)), # "user_id": "NULL", "volume": Numbers().between(minimum=1, maximum=10) }) else: opendate = Datetime().year(minimum=2013, maximum=2018) adddate = Datetime().date(start=opendate, end=2018) periodicals.append({ "title": Text().quote(), "year": opendate, "isbn": Code().isbn(), "adddate": adddate, "issuetime": Datetime().datetime(start=adddate.year, end=2018), "publisher_id": Numbers().between(minimum=1, maximum=len(publisher)), "user_id": Numbers().between(minimum=1, maximum=len(users)), "volume": Numbers().between(minimum=1, maximum=10) }) # papers for i in range(random.randint(num // 4, num * 2)): papers.append({ "name": Text().quote(), "periodical_id": Numbers().between(minimum=1, maximum=len(periodicals)) }) # book author for i in range(len(books)): bookauthor.append({ "book_id": i + 1, "author_id": Numbers().between(minimum=1, maximum=len(authors)) }) # paper author for i in range(len(papers)): authorpaper.append({ "paper_id": i + 1, "author_id": Numbers().between(minimum=1, maximum=len(authors)) }) # book tag for i in range(len(books)): booktag.append({ "book_id": i + 1, "tag_id": Numbers().between(minimum=1, maximum=len(tags)) }) # periodical tag for i in range(len(periodicals)): periodicaltag.append({ "periodical_id": i + 1, "tag_id": Numbers().between(minimum=1, maximum=len(tags)) }) # book history tag for i in range(random.randint(num, num * 4)): boid = Numbers().between(minimum=1, maximum=len(books)) issd = Datetime().date(start=books[boid - 1]["adddate"].year, end=2018) retd = Datetime().date(start=issd.year, end=2018) bhistory.append({ "issuedate": issd, "returndate": retd, "book_id": boid, "user_id": Numbers().between(minimum=1, maximum=len(users)), }) # periodical history tag for i in range(random.randint(num, num * 4)): boid = Numbers().between(minimum=1, maximum=len(periodicals)) issd = Datetime().date(start=periodicals[boid - 1]["adddate"].year, end=2018) retd = Datetime().date(start=issd.year, end=2018) phistory.append({ "issuedate": issd, "returndate": retd, "periodical_id": boid, "user_id": Numbers().between(minimum=1, maximum=len(users)), }) temp = ['Students', 'Faculty', 'Staff', 'Guest'] mb = [3, 6, 4, 2] md = [15, 30, 30, 7] for i in range(4): capacity.append({ "usertype": temp[i], "maxbooks": mb[i], "maxdays": md[i], }) # discipline for i in range(len(books)): discipline.append({ "discipline": Text().word(), "book_id": i + 1, })
def b2(self, seed): return Business(seed=seed)
def getting_started_example(): generic = Generic() #generic = Generic(locales.EN) print('Month =', generic.datetime.month()) print('Datetime =', generic.datetime.datetime(start=1900, end=2035, timezone=None)) # Type: datetime.datetime. print('IMEI =', generic.code.imei()) print('Fruit =', generic.food.fruit()) print('RNA =', generic.science.rna_sequence()) print('Word =', generic.text.word()) with generic.text.override_locale(locales.FR): print('Word =', generic.text.word()) print('Word =', generic.text.word()) generic = Generic('en') generic.add_provider(USASpecProvider) print('SSN =', generic.usa_provider.ssn()) #print('CPF =', generic.usa_provider.cpf()) # AttributeError: 'USASpecProvider' object has no attribute 'cpf'. generic = Generic('pt-br') #generic = Generic(locales.PT_BR) generic.add_provider(BrazilSpecProvider) #print('SSN =', generic.brazil_provider.ssn()) # AttributeError: 'BrazilSpecProvider' object has no attribute 'ssn'. print('CPF =', generic.brazil_provider.cpf()) #-------------------- numbers = Numbers() print('Numbers =', numbers.between()) # Type: int. print('Numbers =', numbers.between(10, 10000000000000000)) # Type: int. #-------------------- person = Person(locales.KO) print('Full name =', person.full_name(gender=Gender.FEMALE)) print('Full name =', person.full_name(gender=Gender.MALE, reverse=True)) with person.override_locale(locales.RU): print('Full name =', person.full_name()) print('Full name =', person.full_name()) print('Telephone =', person.telephone()) print('Telephone =', person.telephone(mask='(###)-###-####')) print('Identifier =', person.identifier()) print('Identifier =', person.identifier(mask='######-#######')) #-------------------- de = Address('de') ru = Address('ru') print('Region =', de.region()) print('Federal subject =', ru.federal_subject()) print('Address =', de.address()) print('Address =', ru.address()) ko = Address('ko') print('Address =', ko.province(), ko.city(), ko.address()) print('Zip code =', ko.zip_code()) #-------------------- business = Business('ko') #print('Price =', business.price(minimum=1.0, maximum=1000000000.0)) # Type: str. #print('Price =', business.price(minimum=1.0, maximum=1000000000.0)[:-2]) # Type: str. print('Price =', business.price(minimum=1.0, maximum=1000000000.0)[:-5]) # Type: str. #-------------------- payment = Payment() print('Credit card =', payment.credit_card_number(card_type=None)) # Type: str.
def _businesses(self, seed): return Business(seed=seed), Business(seed=seed)