您好,登錄后才能下訂單哦!
寫個腳本一共完成了三件事: 第一,python調用http接口, 第二,把調用到的數據寫入mysql數據庫, 第三,python調用wsdl接口,獲取錄音文件, import time import json import pprint import MySQLdb import urllib import os import urllib2 #調報表接口用 import suds #調錄音用 pageNum = range(1,1000) for a in pageNum: url = "http://x.x.x.x:xx/agentProxy/getCallDetail?RN=118117&callType=1&entId=xxxxx&pwd=61712&startTime=20170517000000&endTime=20170517235959&pageNum=" + str(a) req = urllib2.Request(url) res_data = urllib2.urlopen(req) res = res_data.read() data = json.loads(res) data1 = data[0] data2 = data1["callDetailArray"] data4 = data1["retCode"] data5 = data1["retMsg"] data6 = data1["nextPageNum"] data7 = data1["RN"] data8 = data1["entId"] if len(data1['callDetailArray']) == 0: break #print "返回代碼:",data4,"是否成功:",data5,"下一頁:",data6,"RN:",data7,"企業編號:",data8,"本頁總條數:",len(data1['callDetailArray']) data9 = len(data1['callDetailArray']) l = range(len(data1['callDetailArray'])) for i in l: data3 = (data2[i]) data10 = int(data3['sessionId']) data11 = hex(data10) data12 = data11[2:] data13 = data12[:-1] data14 = str(data3['resourceId']) data15 = time.strftime("%Y-%m-%d %X", time.localtime()) url = "http://x.x.x.x:xx/dcmsWebservice/webservice/QueryRecord?wsdl" client=suds.client.Client(url) res = client.service['QueryRecord'].queryRecordAddr("xxxxx",data14,data14,data13) record= str(res) print record db = MySQLdb.connect("x.x.x.x","ucds","ucds","report_detail",charset = "utf8") cursor = db.cursor() sql = """insert into outbound (record_url,sessionId_16,sessionId,resourceId,resourceName,resourceDN,skillId,remoteUrl,localUrl,startTime,endTime, alertDuration,talkDuration,acwDuration,ivrDuration,joinDuration,endType,insertTime) values("%s","%s","%s","%s","%s","%s","%s","%s","%s","%s","%s","%s","%s","%s","%s","%s","%s","%s")"""\ %(record,data13,data3['sessionId'],data3['resourceId'],data3['resourceName'],data3['resourceDN'], data3['skillId'],data3['remoteUrl'],data3['localUrl'],data3['startTime'],data3['endTime'],data3['alertDuration'],data3['talkDuration'],data3['acwDuration'],data3['ivrDuration'],data3['joinDuration'],data3['endType'],data15) cursor.execute(sql) db.commit() cursor.close() db.close() path=r'E:\record\xxxxxxx' if record == str('-5'): print "返回-5,無錄音文件" else: wav = record.split('/') wav1 = wav[8] dest_dir=os.path.join(path,wav1) urllib.urlretrieve(record,dest_dir) print "本次共同步:",(a-1)*100-int(data9),"條數據"
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。