python爬蟲之生活常識(shí)解答機(jī)器人
一、前言
今天教大家如何用Python爬蟲去搭建一個(gè)「生活常識(shí)解答」機(jī)器人。
思路:這個(gè)機(jī)器人主要是依托于“阿里達(dá)摩院發(fā)布的語(yǔ)言模型PLUG”,通過(guò)爬蟲的方式,發(fā)送post請(qǐng)求(提問(wèn)),然后返回json數(shù)據(jù)(回答)
二、問(wèn)答平臺(tái)
這個(gè)「生活常識(shí)解答」機(jī)器人采用的是:阿里達(dá)摩院發(fā)布的語(yǔ)言模型PLUG(最近剛發(fā)布的,目前是測(cè)試階段)

該模型參數(shù)規(guī)模達(dá)270億,采用1TB以上高質(zhì)量中文文本訓(xùn)練數(shù)據(jù),包括了新聞、小說(shuō)、詩(shī)歌、常識(shí)問(wèn)答等類型。
三、原頁(yè)面效果

這里是需要登錄阿里云賬號(hào),登錄之后可以在網(wǎng)頁(yè)進(jìn)行測(cè)試問(wèn)答!
因此我們下面將通過(guò)抓包方式獲取這個(gè)問(wèn)答的請(qǐng)求鏈接,然后在python代碼中requests發(fā)送post請(qǐng)求去進(jìn)行提問(wèn),然后返回結(jié)果(答案)。
四、抓包
在瀏覽器里面F12,點(diǎn)擊network,然后點(diǎn)擊一下提問(wèn),獲取鏈接。
首先是發(fā)送的參數(shù)(提問(wèn))

然后是返回的json數(shù)據(jù)


因此這個(gè)數(shù)據(jù)包的相關(guān)信息(請(qǐng)求鏈接,參數(shù),返回結(jié)果)我們已經(jīng)知道了,下面開(kāi)始編寫python代碼
五、編寫代碼
首先是導(dǎo)入python庫(kù)和請(qǐng)求頭
import requests
import json
header={
'content-type':'application/json',
'cookie':'上面頁(yè)面中你自己的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',
}
經(jīng)過(guò)測(cè)試,有用的請(qǐng)求頭參數(shù)是上面三個(gè)(content-type、cookie、User-Agent),缺一不可。
參數(shù)(其中q是問(wèn)題,length是返回答案長(zhǎng)度,type是對(duì)應(yīng)常識(shí)問(wèn)題)
q = "程序員脫發(fā)用什么洗發(fā)水好?"
data = {
'length':'128',
'type':'2',
'passage':q,
}
發(fā)送請(qǐng)求
url = "https://nlp.aliyun.com/otherApi/yymx/cdgmwbsc" text = requests.post(url,data = json.dumps(data),headers=header).json() print(text['res'])
返回結(jié)果

下面為了能夠多輪提問(wèn),將請(qǐng)求部分代碼放到循環(huán)中(如果輸入是exit則退出循環(huán))

六、總結(jié)
今天小編主要就教大家用Python爬蟲去搭建一個(gè)「生活常識(shí)解答」機(jī)器人。
這個(gè)機(jī)器人主要是依托于“阿里達(dá)摩院發(fā)布的語(yǔ)言模型PLUG”,通過(guò)爬蟲的方式,發(fā)送post請(qǐng)求(提問(wèn)),然后返回json數(shù)據(jù)(回答)。輕松實(shí)現(xiàn)多輪提問(wèn)。
到此這篇關(guān)于python爬蟲之生活常識(shí)解答機(jī)器人的文章就介紹到這了,更多相關(guān)python機(jī)器人內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python中利用aiohttp制作異步爬蟲及簡(jiǎn)單應(yīng)用
- Python爬蟲之線程池的使用
- python基礎(chǔ)之爬蟲入門
- python爬蟲請(qǐng)求庫(kù)httpx和parsel解析庫(kù)的使用測(cè)評(píng)
- Python爬蟲之爬取最新更新的小說(shuō)網(wǎng)站
- 用Python爬蟲破解滑動(dòng)驗(yàn)證碼的案例解析
- Python爬蟲之必備chardet庫(kù)
- Python爬蟲框架-scrapy的使用
- Python爬蟲之爬取二手房信息
- python爬蟲之爬取百度翻譯
- python爬蟲基礎(chǔ)之簡(jiǎn)易網(wǎng)頁(yè)搜集器
- Django利用Cookie實(shí)現(xiàn)反爬蟲的例子
- Python異步爬蟲實(shí)現(xiàn)原理與知識(shí)總結(jié)
相關(guān)文章
使用Puppeteer爬取微信文章的實(shí)現(xiàn)
這篇文章主要介紹了使用Puppeteer爬取微信文章的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02
Python實(shí)現(xiàn)的堆排序算法原理與用法實(shí)例分析
這篇文章主要介紹了Python實(shí)現(xiàn)的堆排序算法,簡(jiǎn)單描述了堆排序的原理,并結(jié)合實(shí)例形式分析了Python實(shí)現(xiàn)堆排序的相關(guān)操作技巧,代碼中備有較為詳細(xì)的注釋便于理解,需要的朋友可以參考下2017-11-11
python線程池的實(shí)現(xiàn)實(shí)例
這篇文章主要介紹了python線程池的實(shí)現(xiàn)方法,代碼簡(jiǎn)單實(shí)用,供大家參考使用2013-11-11
Anaconda安裝之后Spyder打不開(kāi)解決辦法(親測(cè)有效!)
這篇文章主要給大家介紹了關(guān)于Anaconda安裝之后Spyder打不開(kāi)解決辦法,文中將解決的過(guò)程介紹的非常詳細(xì),親測(cè)有效,對(duì)同樣遇到這個(gè)問(wèn)題的朋友具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-04-04
Python實(shí)戰(zhàn)購(gòu)物車項(xiàng)目的實(shí)現(xiàn)參考
今天小編就為大家分享一篇關(guān)于Python實(shí)戰(zhàn)購(gòu)物車項(xiàng)目的實(shí)現(xiàn)參考,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02
python?flappy?bird小游戲分步實(shí)現(xiàn)流程
哈嘍,哈嘍~今天小編又來(lái)分享小游戲了——flappy?bird(飛揚(yáng)的小鳥),這個(gè)游戲非常的經(jīng)典,游戲中玩家必須控制一只小鳥,跨越由各種不同長(zhǎng)度水管所組成的障礙2022-02-02
Python實(shí)現(xiàn)解析ini配置文件的示例詳解
在開(kāi)發(fā)過(guò)程中,配置文件是少不了的,而且配置文件是有專門的格式的,比如:ini,?yaml,?toml?等等。而對(duì)于?Python?而言,也都有相應(yīng)的庫(kù)來(lái)解析相應(yīng)格式的文件,下面我們來(lái)看看?ini?文件要如何解析2022-09-09
python 實(shí)現(xiàn)多線程下載視頻的代碼
這篇文章主要介紹了python 實(shí)現(xiàn)多線程下載視頻的代碼,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11

