使用Pythonの爬虫類は、Baiduの翻訳機能を実現する
Pythonの爬虫類は、Baiduの翻訳を達成:Pythonインタプリタ]百度の結果を得るために、パラメータなどのコンテンツを翻訳する[着信]、[アナログブラウザはポスト[リクエストを送信] [訳]
要求を送信するためのアドレスを取得するためのツールの開発を通じて、
ヒント:送信要求アドレス変換、間違いクロールアドレス、ヘルプに必要な開発ツール[ブラウザ]、またはその他のパケットキャプチャツールにあなたがしたい、Baiduのアドレス変換を開けません
以下に、アドレス要求を取得する具体的な方法について説明
例Chromeにします
オープンBaiduの翻訳:http://fanyi.baidu.com/
[右クリック]> [チェック]> [ネットワーク](Firefoxブラウザの場合は、[ネットワーク])
をクリックし、[XHR]項目(一部をリフレッシュするためにいくつかの必要性非同期リクエスト)をリフレッシュする必要はありません
入力変換ページ[の観点]で
XHRエントリの下で、見つけた単語を翻訳する要求[ENTER]
ビューにパラメータ要求を、あなたは[リクエスト]をクリックする必要があります> [ヘッダ]> [下フォームデータ]
(ここではピットです:Baiduは、それが複数の要求が同じアドレスが、各入力文字は、リクエストが送信されます限り、翻訳ので、我々は、実際には、より多くのSUG項目を見つけますが、最後のものだけSUGパラメータ)語彙の最後の項目です
営業スクリーンショット:
ここで要求アドレス
コードを達成するためにオファー
直接コードに、特定のコメントをダウンロードする手順
不会配置环境,安装python的包,请参考下一篇:
https://i-beta.cnblogs.com/posts/edit-done;postId=11945465
py05bdfanyi.py文件:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/py05bdfanyi.py
1 # python爬虫实现百度翻译 2 # urllib和request POST参数提交 3 # 缺少包请自行查看之前的笔记 4 5 from urllib import request,parse 6 import json 7 8 def fanyi(keyword): 9 base_url = 'http://fanyi.baidu.com/sug' 10 11 # 构建请求对象 12 data = { 13 'kw': keyword 14 } 15 data = parse.urlencode(data) 16 17 # 模拟浏览器 18 header = {"User-Agent": "mozilla/4.0 (compatible; MSIE 5.5; Windows NT)"} 19 20 req = request.Request(url=base_url,data=bytes(data,encoding='utf-8'),headers=header) 21 res = request.urlopen(req) 22 23 # 获取响应的json字符串 24 str_json = res.read().decode('utf-8') 25 # 把json转换成字典 26 myjson = json.loads(str_json) 27 info = myjson['data'][0]['v'] 28 print(info) 29 30 if __name__=='__main__': 31 while True: 32 keyword = input('请输入翻译的单词:') 33 if keyword == 'q': 34 break 35 fanyi(keyword)
代码运行