工具:Python 3.6.5、PyCharm開發工具、Windows 10 操作系統
說明:本例為實現輸入中文翻譯為英文的小程序,適合Python爬蟲的初學者一起學習,感興趣的可以做英文翻譯為中文的功能,如單詞查詢功能等。推薦使用谷歌瀏覽器或火狐瀏覽器檢查元素。使用之前需要先安裝模塊:pip install request pip install json。
數據提取方法:json
1、數據交換格式,看起來像Python類型(列表,字典)的字符串
2、使用json之前需要導入
3、json.loads
(1)、把json字符串轉化為Python類型
(2)、json.loads(json字符串)
4、json.dumps
(1)、把Python類型轉化為json字符串
(2)、json.dumps({})
(3)、json.dumps(ret1,ensure_ascii=False,indent=2)
ensure_ascii讓中文顯示成中文
indent:能夠讓下一行在上一行的基礎上空格
代碼:
1 import requests 2 import json 3 url = "https://fanyi.baidu.com/basetrans" 4 5 query_str = input("請輸入要翻譯的中文:") 6 7 data = { 8 "query":query_str, 9 "from":"zh", 10 "to":"en"} 11 12 headers = { 13 "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1", 14 15 "Referer": "https://fanyi.baidu.com/?aldtype=16047&tpltype=sigma" 16 } 17 18 response = requests.post(url,data=data,headers=headers) 19 20 html_str = response.content.decode()#json字符串 21 22 #json數據交換格式,使用json之前需要導入 23 #把json字符串轉化為Python類型 24 dict_ret = json.loads(html_str) 25 #print(dict_ret) 26 #print(type(dict_ret)) 27 ret = dict_ret["trans"][0]["dst"] 28 print("翻譯結果是:",ret)
運行效果: