requests模块post练习爬取百度翻译
2018-06-15 本文已影响0人
浪子彦卿L
1:通过argv调用
import requests, json, sys
def baiduTranslate():
content = sys.argv[1]
#1、 获取post的URL
postUrl = "http://fanyi.baidu.com/basetrans"
headers = {
"User-Agent": "Mozilla/5.0 (Linux; Android 5.1.1; Nexus 6 Build/LYZ28E) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Mobile Safari/537.36",
}
data = {
"query": content,
"from": "zh",
"to": "en"
}
#2、 发送请求,获取响应
response = requests.post(postUrl, headers = headers, data = data)
jsonStr = response.content.decode()
#3、 提取数据并展示
dictStr = json.loads(jsonStr)
resUlt = dictStr["trans"][0]["dst"]
print("翻译结果为:%s" % resUlt)
baiduTranslate()
Linux下执行结果:
[root@www ~]# python3.6 baidu_fanyi.py 今天是美好的一天
翻译结果为:Today is a wonderful day
[root@www ~]# python3.6 baidu_fanyi.py 人生苦短,我用Python.
翻译结果为:Life is short, I use Python.
[root@www ~]# python3.6 baidu_fanyi.py 生存还是毁灭
翻译结果为:Survival or destruction
1:通过input传入需要翻译的内容调用
import requests, json
def baiduTranslate():
content = input("请输入需要翻译的内容:")
#1、 获取post的URL
postUrl = "http://fanyi.baidu.com/basetrans"
headers = {
"User-Agent": "Mozilla/5.0 (Linux; Android 5.1.1; Nexus 6 Build/LYZ28E) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Mobile Safari/537.36",
}
data = {
"query": content,
"from": "zh",
"to": "en"
}
#2、 发送请求,获取响应
response = requests.post(postUrl, headers = headers, data = data)
jsonStr = response.content.decode()
#3、 提取数据并展示
dictStr = json.loads(jsonStr)
resUlt = dictStr["trans"][0]["dst"]
print("翻译结果为:%s" % resUlt)
baiduTranslate()
Linux下执行结果:
[root@www ~]# python3.6 baidu_fanyi1.py
请输入需要翻译的内容:今天是美好的一天
翻译结果为:Today is a wonderful day
[root@www ~]#
[root@www ~]#
[root@www ~]# python3.6 baidu_fanyi1.py
请输入需要翻译的内容:人生苦短,我用Python。
翻译结果为:Life is short, I use Python
[root@www ~]#