欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Python爬取百度翻译(利用json提取数据)

程序员文章站 2022-03-09 23:39:39
...
本篇文章给大家带来的内容是关于Python爬取百度翻译(利用json提取数据),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

工具: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:能够让下一行在上一行的基础上空格

代码:

import requests
import json
url = "https://fanyi.baidu.com/basetrans"
query_str = input("请输入要翻译的中文:")
data = {
        "query":query_str,
        "from":"zh",
        "to":"en"}
headers = {
        "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",

        "Referer": "https://fanyi.baidu.com/?aldtype=16047&tpltype=sigma"
}
response = requests.post(url,data=data,headers=headers)
html_str = response.content.decode()#json字符串
#json数据交换格式,使用json之前需要导入
#把json字符串转化为Python类型
dict_ret = json.loads(html_str)
#print(dict_ret)
#print(type(dict_ret))
ret = dict_ret["trans"][0]["dst"]
print("翻译结果是:",ret)

运行效果

Python爬取百度翻译(利用json提取数据)

以上就是Python爬取百度翻译(利用json提取数据)的详细内容,更多请关注其它相关文章!

相关标签: Python爬取