python爬取有道詞典
文章目錄
- python爬取有道詞典
- 前言
- 大家好
- 主要內容
- 材料
- 寫程式前準備
- 開始撰寫爬蟲代碼
- 運行結果
前言
大家好
? 最近python爬蟲有點火啊,啥python爬取馬保國視頻……我也來湊個熱鬧,今天我們來試著做個翻譯軟體……不是不是,說錯了,今天我們來試著提交翻譯內容并爬取翻譯結果
主要內容
材料
1.Python 3.8.4
2.電腦一臺(應該不至于有”窮苦人家“連一臺電腦都沒有吧)
3.Google瀏覽器(其他的也行,但我是用的Google)
寫程式前準備
打開Google瀏覽器,找的有道詞典的翻譯網頁(http://fanyi.youdao.com/)
打開后摁F12打開開發者模式,找Network選項卡,點擊Network選項卡,然后重繪一下網頁
然后翻譯一段文字,隨便啥都行(我用的程式員的傳統:hello world),然后點擊翻譯
在選項卡中找到以translate開頭的post檔案

箭頭的地方才是真正的提交地址
記住他,寫代碼時要用

這個是提交電腦的基本資訊,記住他,等會兒要用,等會兒偽裝成電腦時可以用,因為電腦會有基本資訊,而如果是python的話會顯示成python3.8.4(因為我的版本是3.8.4),從而容易被服務器禁入

等會兒還要用
好,準備作業做完了,接下來開始干正事了
開始撰寫爬蟲代碼
下面是我寫的代碼,具體我就不細說了
#匯入urllib庫
import urllib.request
import urllib.parse
import json
while True: #無限回圈
content = input("請輸入您要翻譯的內容(輸入 !!! 退出程式): ")
#設定退出條件
if content == '!!!':
break
url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' #選擇要爬取的網頁,上面找過了
#加上一個帽子,減少被發現的概率(下面head串列的內容就是上面找的)
head = {}
head['User - Agent'] = '請替換'
#偽裝計算機提交翻譯申請(下面的內容也在在上面有過,最好根據自己的進行修改)
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)
#列印翻譯結果
print("翻譯結果: %s" % (paper['translateResult'][0][0]['tgt']))
運行結果

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/231010.html
標籤:python
