实例:使用 Python 开发拼多多客服机器人
今天小帅b要给你分享的是一个实例,一种思路。
在春节前阵子,有朋友在拼多多开的店发现客户越来越多,客服应接不暇,想要花钱请人也无法马上请得到人,如果客服回复率达不到的话店铺会被降权…他表示很苦恼。
我看了下客服聊天记录,发现大多数问题都是频繁被问到的,比如,询问什么时候发货,在哪里发货,多久到,发什么快递,好评返现,商品规格等等。
如果建立一个词库,里面可以根据关键词回复相关的语句,能自动化操作,应该可以减轻不少客服的工作。
我又看了下在 Win 系统中登录后的客服界面,大概长这样:
可以看到,每次有客户来咨询的时候,右下角都会弹出窗口,位置是固定的,而且咨询的内容可以预览得到。
于是,我就有了这么个思路:
可不可以不断的检测右下角是否有消息出现;
如果有消息的话,就通过文字识别,得到客户询问的内容,这样就可以拿到关键词;
接着去词库中寻找相关的回复内容,然后结合自动化操作,自动粘贴,回车回复内容。
具体到功能实现,我们需要实现的是:
截图
文字识别
数据库
复制词库的回复内容
自动化操作一些快捷键
那么如何具体实现呢?
通往 Python 高手之路
Python截图和自动化操作的实现
我之前写过一个库的介绍——Pyautogui:用 Python 控制你的鼠标和键盘,然后爱怎么玩怎么玩,可以发现,我们可以利用它来实现自动化的一些操作,比如点击消息框,CTRL+V 黏贴要回复的文本,按回车发送。
另外,Pyautogui还有截图功能,比如通过坐标 xy 轴的位置,再结合宽高,我们就可以定位到消息出现的位置实现截图:
比如现在右下角信息出现的位置是:
#bottom right corner key_x = 1601 key_y = 837 key_w = 277 key_h = 28
那么就可以这样截图:
pg.screenshot('my_screenshot.png', region=(key_x, key_y, key_w, key_h))
这样就可以截取到具体的图片:
Python文字识别的实现
截取到图片之后,我们就可以通过文字识别的方式来获取到关键文字了,Python 有个 pytesseract 库专门做 ocr 的,不过
使用 Python 复制内容到剪贴板很容易,使用 pyperclip 就可以了,复制:
print(f'回复:{reply}') pyperclip.copy(reply)
好了,现在剪切板已经又回复的内容了,接下来就是控制电脑,去粘贴消息回复了:
pg.click(x=key_x, y=key_y) pg.sleep(0.5) pg.hotkey('ctrl', 'v') pg.sleep(0.5) pg.press('enter')
OK,大体思路就是这样,通过这种模拟人工客服的方式,确实可以提高效率,减少很多不必要的麻烦,事实上,不仅仅是客服,你工作上遇到的一些操作,也许可以通过一些方法实现「自动化」,减轻自己的工作压力,还可以获得更多的时间做自己的事情。
因为这个项目不仅包含客服回复相关,并且涉及到一些利益,我没办法把项目代码完全开源给你使用,但是思路就是这么个思路,更多的是让你借鉴一下,你要相信,你学习的东西,有时候可能对你当下来说不是很有用,但是也许在某一天,你习得的东西会给你带来惊喜,做到「融会贯通」不易,但是请你和我一直走在「积累」的路上,fxxk!