python3网络爬虫:提交post请求修改User-Agent(二)
【摘要】
python3网络爬虫:提交post请求修改User-Agent(二)
'''抓取有道请求数据包,获取有道翻译结果'''import urllib.requestimport urllib.parseimport jsonurl = 'http://fanyi.youdao.com/translate_o?smartr...
python3网络爬虫:提交post请求修改User-Agent(二)
-
'''
-
抓取有道请求数据包,获取有道翻译结果
-
'''
-
import urllib.request
-
import urllib.parse
-
import json
-
url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
-
head = {}
-
head['User-Agent']= 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'
-
data = {} #创建一个空字典,并将下面数据放在这个date字典中。
-
data['i'] = '中国'
-
data['from'] = ['AUTO']
-
data['to']= ['AUTO']
-
data['smartresult']= 'dict'
-
data['client']= 'fanyideskweb'
-
data['salt']= '1527475697186'
-
data['sign']= '8bbf3f58acd0bdd6e8b0a303763350e4'
-
data['doctype']= 'json'
-
data['version']= '2.1'
-
data['keyfrom']= 'fanyi.web'
-
data['action']= 'FY_BY_REALTIME'
-
data['typoResult']= 'false'
-
data = urllib.parse.urlencode(data).encode('utf-8') #urllib.parse.urlencode(data) 编码为application格式提交data数据
-
res = urllib.request.urlopen(url,data,head) #提交url和data的request请求,且将User-Agent
-
-
youdao = res.read().decode('utf-8') #读取数据,并进行utf-8解码
-
print(data)
-
taget = json.loads(youdao) #将数据转换成json串格式
-
taget = taget['translateResult'][0][0]['tgt'] #读取json数据中tgt的值
-
print(taget)
代码解读:
1、代码中data数据如何抓取?
①、在请求的网页中,打开调试模式。在调试模式中找到请求。
②、复制请求中Form Data下面的数据,这个数据就是请求提交的data
③、然后将复制Form Data下面的数据粘贴到python中,在数据前面加上data,将冒号改为等号。如下
-
data = {} #创建一个空字典,并将下面数据放在这个date字典中。
-
data['i'] = '中国'
-
data['from'] = ['AUTO']
-
data['to']= ['AUTO']
-
data['smartresult']= 'dict'
-
data['client']= 'fanyideskweb'
-
data['salt']= '1527475697186'
-
data['sign']= '8bbf3f58acd0bdd6e8b0a303763350e4'
-
data['doctype']= 'json'
-
data['version']= '2.1'
-
data['keyfrom']= 'fanyi.web'
-
data['action']= 'FY_BY_REALTIME'
-
data['typoResult']= 'false'
文章来源: brucelong.blog.csdn.net,作者:Bruce小鬼,版权归原作者所有,如需转载,请联系作者。
原文链接:brucelong.blog.csdn.net/article/details/80480398
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)