python爬蟲之生活常識(shí)解答機(jī)器人
一、前言
今天教大家如何用Python爬蟲去搭建一個(gè)「生活常識(shí)解答」機(jī)器人。
思路:這個(gè)機(jī)器人主要是依托于“阿里達(dá)摩院發(fā)布的語言模型PLUG”,通過爬蟲的方式,發(fā)送post請(qǐng)求(提問),然后返回json數(shù)據(jù)(回答)
二、問答平臺(tái)
這個(gè)「生活常識(shí)解答」機(jī)器人采用的是:阿里達(dá)摩院發(fā)布的語言模型PLUG(最近剛發(fā)布的,目前是測(cè)試階段)
該模型參數(shù)規(guī)模達(dá)270億,采用1TB以上高質(zhì)量中文文本訓(xùn)練數(shù)據(jù),包括了新聞、小說、詩歌、常識(shí)問答等類型。
三、原頁面效果
這里是需要登錄阿里云賬號(hào),登錄之后可以在網(wǎng)頁進(jìn)行測(cè)試問答!
因此我們下面將通過抓包方式獲取這個(gè)問答的請(qǐng)求鏈接,然后在python代碼中requests發(fā)送post請(qǐng)求去進(jìn)行提問,然后返回結(jié)果(答案)。
四、抓包
在瀏覽器里面F12,點(diǎn)擊network,然后點(diǎn)擊一下提問,獲取鏈接。
首先是發(fā)送的參數(shù)(提問)
然后是返回的json數(shù)據(jù)
因此這個(gè)數(shù)據(jù)包的相關(guān)信息(請(qǐng)求鏈接,參數(shù),返回結(jié)果)我們已經(jīng)知道了,下面開始編寫python代碼
五、編寫代碼
首先是導(dǎo)入python庫和請(qǐng)求頭
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', }
經(jīng)過測(cè)試,有用的請(qǐng)求頭參數(shù)是上面三個(gè)(content-type、cookie、User-Agent),缺一不可。
參數(shù)(其中q是問題,length是返回答案長(zhǎng)度,type是對(duì)應(yīng)常識(shí)問題)
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é)果
下面為了能夠多輪提問,將請(qǐng)求部分代碼放到循環(huán)中(如果輸入是exit則退出循環(huán))
六、總結(jié)
今天小編主要就教大家用Python爬蟲去搭建一個(gè)「生活常識(shí)解答」機(jī)器人。
這個(gè)機(jī)器人主要是依托于“阿里達(dá)摩院發(fā)布的語言模型PLUG”,通過爬蟲的方式,發(fā)送post請(qǐng)求(提問),然后返回json數(shù)據(jù)(回答)。輕松實(shí)現(xià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)求庫httpx和parsel解析庫的使用測(cè)評(píng)
- Python爬蟲之爬取最新更新的小說網(wǎng)站
- 用Python爬蟲破解滑動(dòng)驗(yàn)證碼的案例解析
- Python爬蟲之必備chardet庫
- Python爬蟲框架-scrapy的使用
- Python爬蟲之爬取二手房信息
- python爬蟲之爬取百度翻譯
- python爬蟲基礎(chǔ)之簡(jiǎn)易網(wǎng)頁搜集器
- Django利用Cookie實(shí)現(xiàn)反爬蟲的例子
- Python異步爬蟲實(shí)現(xiàn)原理與知識(shí)總結(jié)
相關(guān)文章
Python常見庫matplotlib學(xué)習(xí)筆記之多個(gè)子圖繪圖
Matplotlib是Python提供的一個(gè)繪圖庫,通過該庫我們可以很容易的繪制出折線圖、直方圖、散點(diǎn)圖、餅圖等豐富的統(tǒng)計(jì)圖,下面這篇文章主要給大家介紹了關(guān)于Python常見庫matplotlib學(xué)習(xí)筆記之多個(gè)子圖繪圖的相關(guān)資料,需要的朋友可以參考下2023-05-05用smtplib和email封裝python發(fā)送郵件模塊類分享
本文針對(duì)發(fā)郵件相關(guān)的操作進(jìn)行了封裝,包括發(fā)送文本、HTML、帶附件的郵件,使用Python發(fā)郵件,主要用到smtplib和email兩個(gè)模塊,需要的朋友可以參考下2014-02-02在Python中使用MongoEngine操作數(shù)據(jù)庫教程實(shí)例
這篇文章主要介紹了在Python中使用MongoEngine操作數(shù)據(jù)庫教程實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12解決Django migrate不能發(fā)現(xiàn)app.models的表問題
今天小編就為大家分享一篇解決Django migrate不能發(fā)現(xiàn)app.models的表問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-08-08