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

 更新时间:2021年06月28日 09:18:55   作者:Python研究者  
今天教大家如何用Python爬虫去搭建一个「生活常识解答」机器人.思路:这个机器人主要是依托于“阿里达摩院发布的语言模型PLUG”,通过爬虫的方式,发送post请求(提问),然后返回json数据(回答),需要的朋友可以参考下

一、问答平台

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

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

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

先来看一下原页面效果

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

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

二、抓包

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

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

然后是返回的json数据

请求链接

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

因此这个数据包的相关信息(请求链接,参数,返回结果)我们已经知道了,下面开始编写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'])

返回结果

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

四、小结

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

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

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

相关文章

  • PyCharm License Activation激活码失效问题的解决方法(图文详解)

    PyCharm License Activation激活码失效问题的解决方法(图文详解)

    这篇文章主要介绍了PyCharm License Activation激活码失效问题的解决方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • Python的语言类型(详解)

    Python的语言类型(详解)

    下面小编就为大家带来一篇Python的语言类型(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Python人工智能深度学习CNN

    Python人工智能深度学习CNN

    这篇文章主要为大家介绍了Python人工智能深度学习CNN的教程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2021-11-11
  • 通过pycharm使用git的步骤(图文详解)

    通过pycharm使用git的步骤(图文详解)

    这篇文章主要介绍了通过pycharm使用git的步骤(图文详解),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • 在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例

    在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例

    今天小编就为大家分享一篇在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Django Rest framework三种分页方式详解

    Django Rest framework三种分页方式详解

    这篇文章主要介绍了Django Rest framework三种分页方式详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • python文字转语音的实例代码分析

    python文字转语音的实例代码分析

    在本篇文章里小编给大家整理的是关于python文字转语音的实例代码分析,有需要的朋友们可以参考下。
    2019-11-11
  • matplotlib相关系统目录获取方式小结

    matplotlib相关系统目录获取方式小结

    这篇文章主要介绍了matplotlib相关系统目录获取方式小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Linux下远程连接Jupyter+pyspark部署教程

    Linux下远程连接Jupyter+pyspark部署教程

    这篇文章主要为大家详细介绍了Linux下远程连接Jupyter+pyspark部署教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • Python实现统计文本中字符的方法小结

    Python实现统计文本中字符的方法小结

    在计算机编程中,经常需要对文本数据进行处理和分析,字符统计是其中一个常见任务,本文将详细介绍如何使用Python进行字符统计,希望对大家有所帮助
    2024-01-01

最新评论