亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python模擬簡易版淘寶客服機器人的示例代碼

瀏覽:85日期:2022-06-24 18:08:35

對于用Python制作一個簡易版的淘寶客服機器人,大概思路是:首先從數據庫中用sql語句獲取相關數據信息并將其封裝成函數,然后定義機器問答的主體函數,對于問題的識別可以利用正則表達式來進行分析,結合現實情況選擇答案,最后在執行時可以設置循環語句,并且在每次回答間隔1s方便進一步做并發處理作為未來優化方向。從以下幾個方面分別實現:

1、貨物信息儲存到MySQL數據庫中

在現實情景中,購物信息的數據一般會儲存到數據庫中,方便在進行問答時才訪問數據庫獲取相關信息,可以用Python中的sqlalchemy包把表格導入到MySQL數據庫中:

import pymysqlimport pandas as pdimport sqlalchemy as sqlafrom sqlalchemy.orm import sessionmakerimport timeimport re#導入數據data = pd.read_excel(r'E:/1/Study/大三下/自然語言處理/作業表.xlsx')data = data.head(1)#datadb = sqla.create_engine(’mysql+pymysql://root:******@localhost/lsq?charset=utf8’)#連接數據庫(密碼馬賽克一下)#導入表格到數據庫中data.to_sql(’shopping_informations’,db,index=False,if_exists=’append’)

運行結果如下:

Python模擬簡易版淘寶客服機器人的示例代碼

2、在問答過程中可以訪問數據庫獲取結果

利用Python中的pymysql包,先對數據庫進行連接并使用cursor()方法獲取操作游標。然后分別對發貨時間、發貨地、商品單號和商品狀態進行函數定義,執行相關sql語句對數據庫信息進行提取:

conn = pymysql.connect('localhost','root','******','lsq')#*為密碼cursor = conn.cursor()def start_time():#發貨時間 starttime_sql = 'SELECT START_RIME FROM shopping_informations' try: cursor.execute(starttime_sql) result1 = cursor.fetchall() print('親您所購買的寶貝計劃在%s進行發貨~預計將會在%s不要著急喲' % result1[0]) except: print('哎呀!機器客服這邊暫時找不到相關數據嗚嗚嗚~親可以聯系一下人工客服') conn.close()def start_local():#發貨地 startlocal_sql = 'SELECT START_LOCAL FROM shopping_informations' try: cursor.execute(startlocal_sql) result2 = cursor.fetchone() print('親您所購買的寶貝計劃從%s發出~不要著急喲' % result2[0]) except: print('哎呀!機器客服這邊暫時找不到相關數據嗚嗚嗚~親可以聯系一下人工客服') conn.close() def ID():#商品單號 id_sql = 'SELECT ID FROM shopping_informations' try: cursor.execute(id_sql) result3 = cursor.fetchone() print('親您所購買的寶貝單號是%s' % result3[0]) except: print('哎呀!機器客服這邊暫時找不到相關數據嗚嗚嗚~親可以聯系一下人工客服') conn.close()def state():#商品狀態 state_sql = 'SELECT STATE FROM shopping_informations' try: cursor.execute(state_sql) result4 = cursor.fetchone() print('親您所購買的寶貝現在在%s中~不要著急喲' % result4[0]) except: print('哎呀!機器客服這邊暫時找不到相關數據嗚嗚嗚~親可以聯系一下人工客服') conn.close()

其中,在函數定義里加入了try-except異常捕捉部分,當問句發生錯誤或者在數據庫中無法找到對應數據時,可以讓客戶聯系人工客服。

3、利用正則表達式對問句進行識別

對于客戶所輸入的問題,用正則表達式對其進行分析識別,選擇相應的答案進行回答,當問題超過答案范圍,可以讓客戶聯系人工客服:

str1 = ''def answer_robot(str1): if re.search(r’.*快遞(.*)?’,str1):#涉及到快遞公司的問題 str2 = '親!我們店統一默認發百世匯通,按倉擇優分配快遞,不能指定喲~請諒解!' elif re.search(r’.*狀態(.*)?’,str1):#涉及到商品狀態的問題 str2 = state() elif re.search(r’(w)?[編號|單號|貨號]w’,str1):#涉及到商品單號的問題 str2 = ID() elif re.search( r’(w)?[哪里|發貨地]w’,str1):#涉及到商品發貨地的問題 str2 = start_local() elif re.search( r’(w)?[時間|時候]w’,str1):#涉及到商品發貨時間的問題 str2 = start_time() else: str2 = '嗚嗚嗚問題太復雜啦!建議親找人工姐姐喲~' return str2

最后,定義主體函數,其中每次問答需要休眠1s的時間。因為在實際情景中,客服機器人需要在并發的情況下實現,也就是說存在多人同時使用客服機器人的情況:

def main(): while True:#可以循環多次使用(ctrl+c結束程序) str1 = input('輸入對話:') str3 = answer_robot(str1) time.sleep(1) print(str3)

利用PowerShell運行改py文件,結果如下圖(ctrl+c終止程序):

Python模擬簡易版淘寶客服機器人的示例代碼

優化方向:

1、進一步利用1s間隔時間做并發處理,模擬現實生活中多人同時使用客服機器人2、進一步優化正則表達式的書寫,從結果截圖可以看出在一些回答上機器人在選擇答案時會出現一定的錯誤,精確度不高3、分別用sql語句獲取不同購物信息會有些累贅,可以直接獲取整個數據庫的購物表,再利用pd中的dataframe來接受并提取其中的信息

到此這篇關于Python模擬簡易版淘寶客服機器人的示例代碼的文章就介紹到這了,更多相關Python 淘寶客服機器人內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: 淘寶 Python
相關文章:
主站蜘蛛池模板: 99精品国产成人a∨免费看 | 中国大陆高清aⅴ毛片 | 国产精品观看在线亚洲人成网 | 久久亚洲成人 | 91视频免费入口 | 国产免费看网站v片不遮挡 国产免费高清 | 日本韩国欧美在线观看 | 在线免费观看黄色小视频 | 国产tv在线 | 国产精品自在欧美一区 | 亚洲午夜在线播放 | 丁香婷婷激情综合 | 亚洲欧美久久 | 91丝瓜视频最新版 | 免费一区在线 | 亚洲呦呦系列视频 | 久久国产亚洲高清观看5388 | 国产剧情精品在线 | 成人在线视频网 | 大香萑75久久精品免费 | 黄色一级播放 | 色琪琪综合网站 | 成年片人免费www | 国产v欧美v日韩在线观看 | 成人久久网站 | 亚洲色图第一页 | 亚洲精品午夜aaa级久久久久 | 高清不卡 | 全色黄大色大片免费久久老太 | 国产精品午夜久久 | 亚洲一区二区三区欧美 | 黑人爱爱视频 | 日日噜噜夜夜狠狠tv视频免费 | 国产在线观看黄色 | 一级特黄aaa大片 | 亚洲 欧美 日韩中文字幕一区二区 | 立即播放免费毛片一级 | 性生活免费视频网站 | 久久香蕉国产线看观看精品蕉 | 特黄特黄特色大片免费观看 | 国产精品爱久久久久久久 |