Python实现生活常识解答机器人


Posted in Python onJune 28, 2021

一、问答平台

这个「生活常识解答」机器人采用的是:阿里达摩院发布的语言模型PLUG(最近刚发布的,目前是测试阶段),地址链接如下:

https://nlp.aliyun.com/portal#/BigText_chinese

Python实现生活常识解答机器人

该模型参数规模达270亿,采用1TB以上高质量中文文本训练数据,包括了新闻、小说、诗歌、常识问答等类型。

先来看一下原页面效果

Python实现生活常识解答机器人

这里是需要登录阿里云账号,登录之后可以在网页进行测试问答!

因此我们下面将通过抓包方式获取这个问答的请求链接,然后在python代码中requests发送post请求去进行提问,然后返回结果(答案)。

二、抓包

在浏览器里面F12,点击network,然后点击一下提问,获取链接。

首先是发送的参数(提问)

Python实现生活常识解答机器人

然后是返回的json数据

Python实现生活常识解答机器人

请求链接

https://nlp.aliyun.com/otherApi/yymx/cdgmwbsc

Python实现生活常识解答机器人

因此这个数据包的相关信息(请求链接,参数,返回结果)我们已经知道了,下面开始编写python代码

三、编写代码

首先是导入python库和请求头

 

import requests
import json
header={
    'content-type':'application/json',
    'cookie':'上面页面中你自己的cookie',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3947.100 Safari/537.36',
}

经过测试,有用的请求头参数是上面三个(content-type、cookie、User-Agent),缺一不可。

参数(其中q是问题,length是返回答案长度,type是对应常识问题)

 

q = "程序员脱发用什么洗发水好?"
data = {
    'length':'128',
    'type':'2',
    'passage':q,
}

发送请求

 

url = "https://nlp.aliyun.com/otherApi/yymx/cdgmwbsc"
text = requests.post(url,data = json.dumps(data),headers=header).json()
print(text['res'])

返回结果

Python实现生活常识解答机器人

下面为了能够多轮提问,将请求部分代码放到循环中(如果输入是exit则退出循环)

Python实现生活常识解答机器人

四、小结

今天阿辰主要就教大家用Python爬虫去搭建一个「生活常识解答」机器人。

这个机器人主要是依托于“阿里达摩院发布的语言模型PLUG”,通过爬虫的方式,发送post请求(提问),然后返回json数据(回答)。轻松实现多轮提问。

到此这篇关于Python实现生活常识解答机器人的文章就介绍到这了,更多相关Python机器人内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python如何爬取个性签名
Jun 19 Python
python输出100以内的质数与合数实例代码
Jul 08 Python
python实现求特征选择的信息增益
Dec 18 Python
Pycharm保存不能自动同步到远程服务器的解决方法
Jun 27 Python
python函数不定长参数使用方法解析
Dec 14 Python
python将图片转base64,实现前端显示
Jan 09 Python
简单了解python列表和元组的区别
May 14 Python
Python 如何定义匿名或内联函数
Aug 01 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
Sep 23 Python
Python之字典添加元素的几种方法
Sep 30 Python
Python监听剪切板实现方法代码实例
Nov 11 Python
Django rest framework如何自定义用户表
Jun 09 Python
Python办公自动化之教你如何用Python将任意文件转为PDF格式
Python移位密码、仿射变换解密实例代码
Pytest中conftest.py的用法
Python实现8种常用抽样方法
Python基于百度API识别并提取图片中文字
Python基于百度AI实现抓取表情包
Python道路车道线检测的实现
You might like
snoopy 强大的PHP采集类使用实例代码
2010/12/09 PHP
PHP反射机制用法实例
2014/08/28 PHP
根据地区不同显示时间的javascript代码
2007/08/13 Javascript
javascript 原型继承介绍
2011/08/30 Javascript
jQuery EasyUI API 中文文档 可调整尺寸
2011/09/29 Javascript
一个简单的网站访问JS计数器 刷新1次加1次访问
2012/09/20 Javascript
JQuery实现绚丽的横向下拉菜单
2013/12/19 Javascript
jQuery 浮动导航菜单适合购物商品类型的网站
2014/09/09 Javascript
基于NodeJS的前后端分离的思考与实践(五)多终端适配
2014/09/26 NodeJs
JQuery替换DOM节点的方法
2015/06/11 Javascript
使用jQuery+EasyUI实现CheckBoxTree的级联选中特效
2015/12/06 Javascript
Bootstrap基本布局实现方法详解
2016/11/25 Javascript
Canvas 制作动态进度加载水球详解及实例代码
2016/12/09 Javascript
详解网站中图片日常使用以及优化手法
2017/01/09 Javascript
JavaScript数组去重的多种方法(四种)
2017/09/19 Javascript
vue.js实现格式化时间并每秒更新显示功能示例
2018/07/07 Javascript
javascript异步处理与Jquery deferred对象用法总结
2019/06/04 jQuery
修改vue源码实现动态路由缓存的方法
2020/01/21 Javascript
浅谈vue 多个变量同时赋相同值互相影响
2020/08/05 Javascript
python+POP3实现批量下载邮件附件
2018/06/19 Python
python3实现点餐系统
2019/01/24 Python
Python当中的array数组对象实例详解
2019/06/12 Python
Pytorch 实现自定义参数层的例子
2019/08/17 Python
pandas.DataFrame.drop_duplicates 用法介绍
2020/07/06 Python
python爬虫使用requests发送post请求示例详解
2020/08/05 Python
如何将json数据转换为python数据
2020/09/04 Python
html5写一个BUI折叠菜单插件的实现方法
2019/09/11 HTML / CSS
英国花园药房: The Garden Pharmacy
2017/12/28 全球购物
印尼网上商店:Alfacart.com
2019/03/11 全球购物
波兰最早的运动鞋精品店之一:Street Supply
2019/08/29 全球购物
高一物理教学反思
2014/01/24 职场文书
厂区绿化方案
2014/05/08 职场文书
机关作风整顿个人整改措施思想汇报
2014/09/29 职场文书
公积金具结保证书
2015/05/11 职场文书
用人单位的规章制度,怎样制定才是有效的?
2019/07/09 职场文书
Nginx的基本概念和原理
2022/03/21 Servers