python爬取有道翻译
1.准备工作
先来到有道在线翻译的界面http://fanyi.youdao.com/
F12 审查元素 ->选Network一栏,然后F5刷新 (如果看不到Method一栏,右键Name栏,选中Method)
输入文字自动翻译后发现Method一栏有GET还有POST;GET是指从服务器请求和获得数据,POST是向指定服务器提交被处理的数据、
随便打开一个POST,找到preview可以看到我们输入的“我爱你一生一世”数据,可以证明post的提交数据的
下面分析一下Headers各个字段的意义;User-agent字段很重要
下面来看一下request模块中urlopen方法,查看文档;
发现urlopen有一个data参数,如果参数没赋值(默认None)就是GET形式,如果data参数被赋值了,就以POST形式提交
在这里,data参数其实是一个字典 ;就是源代码中From Data的数据
下面一篇文章是对urlencode与unquote的详细解释:(urllib库里可惜没有urldecode函数)
https://www.cnblogs.com/caicaihong/p/5687522.html
为什么要进行编码和解码呢?------》对于一些中文或者字符,url是不识别的,需要进行编码转换!
encode(‘utf-8‘)把unicode的形式变成utf-8
decode(‘utf-8‘)把utf-8形式变成Unicode编码形式
2.下面进行敲!