您好,登錄后才能下訂單哦!
利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬???針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。
材料
1.Python 3.8.4
2.電腦一臺(tái)(應(yīng)該不至于有”窮苦人家“連一臺(tái)電腦都沒有吧)
3.Google瀏覽器(其他的也行,但我是用的Google)
寫程序前準(zhǔn)備
打開Google瀏覽器,找的有道詞典的翻譯網(wǎng)頁(http://fanyi.youdao.com/)
打開后摁F12打開開發(fā)者模式,找Network選項(xiàng)卡,點(diǎn)擊Network選項(xiàng)卡,然后刷新一下網(wǎng)頁
然后翻譯一段文字,隨便啥都行(我用的程序員的傳統(tǒng):hello world),然后點(diǎn)擊翻譯
在選項(xiàng)卡中找到以translate開頭的post文件
箭頭的地方才是真正的提交地址
記住他,寫代碼時(shí)要用
這個(gè)是提交電腦的基本信息,記住他,等會(huì)兒要用,等會(huì)兒偽裝成電腦時(shí)可以用,因?yàn)殡娔X會(huì)有基本信息,而如果是python的話會(huì)顯示成python3.8.4(因?yàn)槲业陌姹臼?.8.4),從而容易被服務(wù)器禁入
等會(huì)兒還要用
好,準(zhǔn)備工作做完了,接下來開始干正事了
開始編寫爬蟲代碼
下面是我寫的代碼,具體我就不細(xì)說了
#導(dǎo)入urllib庫 import urllib.request import urllib.parse import json while True: #無限循環(huán) content = input("請(qǐng)輸入您要翻譯的內(nèi)容(輸入 !!! 退出程序): ") #設(shè)置退出條件 if content == '!!!': break url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' #選擇要爬取的網(wǎng)頁,上面找過了 #加上一個(gè)帽子,減少被發(fā)現(xiàn)的概率(下面head列表的內(nèi)容就是上面找的) head = {} head['User - Agent'] = '請(qǐng)?zhí)鎿Q' #偽裝計(jì)算機(jī)提交翻譯申請(qǐng)(下面的內(nèi)容也在在上面有過,最好根據(jù)自己的進(jìn)行修改) data = {} data['type'] = 'AUTO' data['i'] = content data['doctype'] = 'json' data['version'] = '2.1' data['keyfrom:'] = 'fanyi.web' data['ue'] = 'UTF-8' data['typoResult'] = 'true' data = urllib.parse.urlencode(data).encode('utf-8') response = urllib.request.urlopen(url, data) #解碼 html = response.read().decode('utf-8') paper = json.loads(html) #打印翻譯結(jié)果 print("翻譯結(jié)果: %s" % (paper['translateResult'][0][0]['tgt']))
運(yùn)行結(jié)果
關(guān)于利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬取問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。