python Faker庫生成測試資料寫入資料庫

2021-10-13 14:38:06 字數 3401 閱讀 5269

安裝faker

pip install faker
from faker import faker

import pandas as pd

from urllib import parse

import pymysql

class

createdata

(object):

def__init__

(self)

:# 選擇中文

fake = faker(

'zh_cn'

) self.data_total =[[

fake.name(),

fake.job(),

fake.company(),

fake.phone_number(),

fake.company_email(),

fake.address(),

fake.date_time(tzinfo=

none)]

for x in

range

(100)]

print

(self.data_total)

defdeal_excel

(self)

:"""建立資料寫入excel"""

df = pd.dataframe(self.data_total,

columns=

['name'

,'job'

,'company'

,'phone_number'

,'company_email'

,'address'

,'date_time'])

# 寫入excel

df.to_excel(

"data_total.xlsx"

, index=

false

)print

('寫入成功!!'

)def

deal_txt

(self)

:"""建立資料寫入txt檔案"""

with

open

('data_total.txt'

,'w'

, errors=

'ignore'

, encoding=

'utf-8'

)as output:

output.write(

'name,job,company,phone_number.company_email.address.date_time\n'

)for row in self.data_total:

rowtxt =

'{},{},{},{}'

.format

(row[0]

, row[1]

, row[2]

, row[3]

) output.write(rowtxt)

output.write(

'\n'

) output.close(

)print

("processing completed to txt"

)def

deal_mysql

(self)

:"""建立資料寫入mysql"""

# 資料庫配置

db = pymysql.connect(host=

"127.0.0.1"

, port=

3306

, user=

"root"

, password=

"123456"

, db=

"lp_cs"

, charset=

"utf8"

)# 獲取操作游標

cursor = db.cursor(

)# 建立表

sql =

''' create table test_data(

name varchar(20) not null comment '姓名',

job varchar(20) not null comment '工作',

company varchar(64) not null comment '單位',

phone_number varchar(30) not null comment '**號碼',

company_email varchar(64) comment '公司郵箱',

address varchar(64) comment '位址',

date_time datetime comment '時間'

)'''

# 執行sql

cursor.execute(sql)

for val in self.data_total:

sql =

"insert into test_data" \

"(name,job,company,phone_number,company_email,address,date_time) value ('%s','%s','%s','%s','%s','%s','%s')"%(

val[0]

, val[1]

, val[2]

, val[3]

, val[4]

, val[5]

, val[6]

)try

:# 執行sql語句

cursor.execute(sql)

# 執行sql語句

db.commit(

)print

("insert ok"

)except

:# 發生錯誤時回滾

db.rollback(

)# 關閉資料庫連線

Python Faker庫,批量生成像真的假資料

python faker庫官方文件詳見 faker庫提供了三大類資料 standard providers 生成通用的位址 日期時間 職業 人名 身份證 手機號等。community providers 由第三方提供的資料型別,比如web服務 雲服務 wifi 汽車等資訊。除了faker庫,還需要額...

Jmeter非GUI GUI模式壓測生成測試報告

在使用jmeter進行壓力測試,有兩種方式 gui 非gui,不管是使用gui,還是非gui進行測試,對測試結果都可以轉化成html的測試報告,更直觀和方便我們檢視和分析。方式一 gui 1 在測試計畫裡面新增乙個listener 新增任意乙個listener都可以 在write result to...

利用PowerDesigner批量生成測試資料

原貼 http community.csdn.net expert topic 4288 4288923.xml?temp 1241571 主要解決方法 a 在powerdesigner 建表 b 然後給每乙個表的字段建立相應的摘要檔案 步驟如下 model test data profiles 配...