我們在測試過程中,可能需要到數據庫中拉去一些數據,為從測試准備。比如最近在做接口性能測試的時候,就需要很多數據來支撐,所以就需要的數據庫去查詢數據,下面就是python3 查詢 mysql 並且保存到文件中,然后為接口做測試做准備。
1 #coding=utf-8 2 3 import pymysql as MySQLdb #這里是python3 如果你是python2.x的話,import MySQLdb 4 5 host = xxxx 6 user = xxxx 7 passwd = xxxx 8 port = xxxx 9 db = xxxx 10 class SelectMySQL(object): 11 def select_data(self,sql): 12 result = [] 13 try: 14 conn = MySQLdb.connect(host=host, 15 port=port, 16 user=user, 17 passwd=passwd, 18 db=db, 19 charset='utf8', ) 20 cur = conn.cursor() 21 cur.execute(sql) 22 alldata = cur.fetchall() 23 # print(alldata) 24 for rec in alldata: 25 result.append(rec[0]) #注意,我這里只是把查詢出來的第一列數據保存到結果中了,如果是多列的話,稍微修改下就ok了 26 except Exception as e: 27 print('Error msg: ' + e) 28 finally: 29 cur.close() 30 conn.close() 31 32 return result 33 34 def get_result(self, sql, filename): 35 print(sql) 36 results = self.select_data(sql) 37 print('The amount of datas: %d' % (len(results))) 38 with open(filename, 'w') as f: 39 for result in results: 40 f.write(str(result) + '\n') 41 print('Data write is over!') 42 return results 43 44 if __name__ == '__main__': 45 sql = "select name from user" 46 select = SelectMySQL() 47 result1 = select.get_result(sql,'namemsg.txt') 48 print(result1)
在你腳本的目錄下就會有namemsg.txt文件,里面就是你想要的文件了