python读取mysql以html形式输出_python实现处理mysql结果输出方式
在運維過程中,經常需要讀取mysql的結果輸出并進行響應的處理,這節介紹如何用Python讀取mysql結果表并進行相應的整理。
進行mysql結果文件輸出:
mysql -h10.20.10.207 -uroot -ppasswd test -e "select sendorderid, (price*100),mob from interfacelog where merid='****' >/home/anan/interfacelog.txt ##這里寫你需要執行的sql語句將結果打印成一個文件
/home/anan/interfacelog.txt內容如下,因為保密性要求,只顯示一條數據
程序介紹: readInterfacelog
實現讀取mysql的打印的結果并執行相應的語句。這里我們以重新輸出結果作為演示。
具體實現
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date : 2018-07-19 11:39:00
# @Author : Zhou Jiaan
# @Version : V1.0
import os
import sys
import time
import re
def readInterfacelog(merid):
with open('/home/anan/interfacelog.txt', 'r') as f: #讀取mysql輸出文件
lines = f.readlines()
for line in lines[2::1]: #因為第一第二行并不是我們需要處理的數據而是無效數據故我們忽略前兩行直接讀取后續我們需要的內容
interfacelog = re.split(r'[\t|\s]\s*', line) #對文件進行切分,
sendorderid = interfacelog[0]
price100 = interfacelog[1]
mob = interfacelog[2]
print(sendorderid, price100, mob)
###這里進行你需要對輸出進行的操作。
# os.system('/usr/local/bin/MsgSrvClient -h *.*.*.* -p 6004 -w0 -e "IFTran SlowInt 1 %s %s %s NA 1 5000 120 NA 22 NA NA %s NA NA NA";'%(sendorderid,price100,merid,mob)) ##這是我的需求
time.sleep(0.1)
def main():
# merid=sys.argv[1]
try:
merid_num = sys.argv[1]
except Exception as e:
merid_num = input("請輸入merid:")
else:
print("輸出merid_num:{}".format(merid_num))
finally:
merid = merid_num
print(merid)
readInterfacelog(merid)
if __name__ == '__main__':
main()
補充知識:python打印mysql版本信息
#第一句話寫成#!/usr/local/python不行,還不知道為啥
#!/usr/bin/env python
import MySQLdb
db = MySQLdb.connect("192.168.74.130","root","l","")
cursor=db.cursor()
cursor.execute("select version()")
data=cursor.fetchone()
print "Database version : %s " % data
db.close()
以上這篇python實現處理mysql結果輸出方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持python博客。
總結
以上是生活随笔為你收集整理的python读取mysql以html形式输出_python实现处理mysql结果输出方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python连接linux堡垒机_利用P
- 下一篇: mysql bigint转string_