溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬取

發(fā)布時(shí)間:2020-12-08 14:49:41 來源:億速云 閱讀:308 作者:Leah 欄目:開發(fā)技術(shù)

利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬???針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。

主要內(nèi)容

 材料

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文件

利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬取

箭頭的地方才是真正的提交地址

記住他,寫代碼時(shí)要用

利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬取

這個(gè)是提交電腦的基本信息,記住他,等會(huì)兒要用,等會(huì)兒偽裝成電腦時(shí)可以用,因?yàn)殡娔X會(huì)有基本信息,而如果是python的話會(huì)顯示成python3.8.4(因?yàn)槲业陌姹臼?.8.4),從而容易被服務(wù)器禁入

利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬取

等會(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é)果

利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬取

關(guān)于利用python爬蟲怎么對(duì)有道詞典進(jìn)行爬取問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問一下細(xì)節(jié)

免責(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)容。

AI