python爬取有道翻译

1.准备工作

先来到有道在线翻译的界面http://fanyi.youdao.com/

F12 审查元素 ->选Network一栏,然后F5刷新 (如果看不到Method一栏,右键Name栏,选中Method)

python爬取有道翻译

输入文字自动翻译后发现Method一栏有GET还有POST;GET是指从服务器请求和获得数据,POST是向指定服务器提交被处理的数据、

随便打开一个POST,找到preview可以看到我们输入的“我爱你一生一世”数据,可以证明post的提交数据的

python爬取有道翻译

下面分析一下Headers各个字段的意义;User-agent字段很重要

python爬取有道翻译

python爬取有道翻译

下面来看一下request模块中urlopen方法,查看文档;

发现urlopen有一个data参数,如果参数没赋值(默认None)就是GET形式,如果data参数被赋值了,就以POST形式提交

 python爬取有道翻译

在这里,data参数其实是一个字典 ;就是源代码中From Data的数据

下面一篇文章是对urlencodeunquote的详细解释:urllib库里可惜没有urldecode函数)

https://www.cnblogs.com/caicaihong/p/5687522.html

为什么要进行编码和解码呢?------》对于一些中文或者字符,url是不识别的,需要进行编码转换!
encode(‘utf-8‘)把unicode的形式变成utf-8
decode(‘utf-8‘)把utf-8形式变成Unicode编码形式
 
 
 
2.下面进行敲!