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

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

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

等會兒還要用
好,準備工作做完了,接下來開始干正事了
開始編寫爬蟲代碼
下面是我寫的代碼,具體我就不細說了
#導入urllib庫
import urllib.request
import urllib.parse
import json
while True: #無限循環(huán)
content = input("請輸入您要翻譯的內容(輸入 !!! 退出程序): ")
#設置退出條件
if content == '!!!':
break
url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' #選擇要爬取的網頁,上面找過了
#加上一個帽子,減少被發(fā)現(xiàn)的概率(下面head列表的內容就是上面找的)
head = {}
head['User - Agent'] = '請?zhí)鎿Q'
#偽裝計算機提交翻譯申請(下面的內容也在在上面有過,最好根據自己的進行修改)
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']))
運行結果

到此這篇關于python爬取有道詞典的文章就介紹到這了,更多相關python有道詞典內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
解決使用Pycharm導入conda?environment時找不到python.exe
今天在使用conda創(chuàng)建環(huán)境之后,使用pycham發(fā)現(xiàn)找到自己的python環(huán)境但是找不到環(huán)境對應的python.exe,這篇文章主要給大家介紹了關于如何解決使用Pycharm導入conda?environment時找不到python.exe的相關資料,需要的朋友可以參考下2023-10-10
Python數(shù)據可視化之Matplotlib初級使用指南
Matplotlib是Python中最常用的數(shù)據可視化庫之一,它提供了豐富的圖表類型和靈活的自定義選項,能幫助我們以更直觀的方式理解數(shù)據,本文將對Matplotlib的基本功能進行介紹,包括如何創(chuàng)建和自定義圖表等2023-07-07
Django中自定義admin Xadmin的實現(xiàn)代碼
這篇文章主要介紹了Django中自定義admin---Xadmin的實現(xiàn)代碼,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下2019-08-08

