有道翻译的爬取

Python作为爬虫的强大人尽皆知,一个人不使用python爬取些什么,那么他的Python生涯一定是不完整的,这里简单写一下用Python爬取有道翻译的教程。

关于有道翻译的爬取网上链接很多,这里爬取的时候发现有道反爬虫机制有一个小bug,直接绕过就可以了。

话不多说,现在开始。

一 服务器数据的获取

右击检查、点击network

在翻译框输入任意字符后点击headers

将每一项挨个点开,寻找post项(浏览器向服务器返回数据一项)

这里得到返回的服务器地址:

向服务器返回的数据向下拖可以看到:

这些数值将以字典形式返回到服务器。其中(salt,sign,ts,bv)四种形式为反爬虫机制需要的数据,我们把它删去就好(为什么这个反爬虫没生效?)

改为:

二 python代码的书写

由于urllib自带对返回数据的处理,我们只需要将返回值以字典的形式传入,并且通过

Data=urllib.parse.urlencode(dir)即可对数据进行处理,生成返回值

通过request.Urlopen返回一个字典:

用json处理后读取即可

三 结果如下图

本人在此处还搭配了itchat,实现微信的简单翻译。

四 源码如下

fromurllib importrequest

importurllib

importjson

importitchat,os,pinyin,shutil

fromitchat.content import*

defyoudao_tran(tran_word):

url='http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'data={'i':tran_word,

'from':'AUTO',

'to':'AUTO',

'smartresult':'dict',

'client':'fanyideskweb',

'doctype':'json',

'version':'2.1',

'keyfrom':'fanyi.web',

'action':'FY_BY_REALTIME',

'typoResult':'false'}

data=urllib.parse.urlencode(data).encode('utf-8')

responce=request.urlopen(url,data)

reply=json.loads(responce.read().decode(encoding='utf-8'))['translateResult'][0][0]['tgt']

print(reply)

returnreply

@itchat.msg_register(TEXT)#只对文本信息进行操作defauto_reply(msg):

ifmsg['Text'].split(':')[0]=='翻译':

defaultReply = youdao_tran(msg['Text'].split(':')[1])

returndefaultReply

# 为了让实验过程更加方便(修改程序不用多次扫码),我们使用热启动itchat.auto_login(hotReload=True)#生成Qcode码,扫描成功即可登录网页版微信itchat.run()

python爬取有道翻译的代码_有道翻译的爬取相关推荐

  1. python爬取有道翻译的代码_使用python2爬取有道翻译

    爬虫的核心思想:模拟浏览器正常访问服务器,一般情况只要浏览器能访问的,都可以爬,如果被反爬,则考虑反复测试添加Request Header数据,知道可以爬取为止. 反爬思路目前知道的有:User-Ag ...

  2. idea 划词就能翻译的插件_划词翻译插件下载-划词翻译Chrome插件-独木成林

    划词翻译Chrome插件是一款强大的电脑翻译工具,它基于谷歌Chrome内核,可以帮助用户进行国内外多种语音的翻译操作,拥有百度翻译.有道翻译和谷歌翻译等多种翻译引擎,支持中外文互译,并且多种文档都有 ...

  3. 禅道开源版用户手册_禅道集成 - ZDOO基础版使用手册 - ZDOO - 全面支持阿米巴的全协同管理软件...

    ZDOO2.7版本开始增加了禅道集成功能(需要配合禅道基础版7.4以上或企业版5.0以上版本,禅道亦不需要额外安装插件). 集成禅道后可以使用ZDOO账户去登录禅道,将禅道作为ZDOO的一个应用,在Z ...

  4. python爱心代码_百度搜索指数的爬取方法及代码

    最近几年经常在各平台看到有关「搜索指数动态排行」的视频,比如「青春有你2」决赛前一周,我在B站上传了一段「青你2」和「创造营2020」的人气选手指数动态榜的视频: 「青春有你2」VS「创造营2020」 ...

  5. git 拉取远程其他分支代码_【记录】git 拉取远程分支代码,同步到另一个git上...

    最近有需求从某git 上拉取所有分支代码同步到另一git上,现记录操作步骤,以便日后使用: 1:先克隆其中一个分支代码到本地环境 git clone -b test http://账号:密码@XXX. ...

  6. 有道词典java下载手机版下载手机版_有道词典app下载_有道词典在线翻译下载安装手机版v9.08...

    有道词典app是网易开发设计的一款手机免费翻译软件,专为用户打造的移动翻译词典运用.网易有道词典APP是一款提供多种语系翻译,大量语汇任你查,汇聚wiki百科.百度百科内容,包揽2000万百科词条,更 ...

  7. python模拟蚂蚁森林能量产生过程代码_用Python实现定时自动化收取蚂蚁森林能量,再也不用担心忘记收取了...

    1. 概述 提到蚂蚁森林,大家应该都知道,你是否有因忘记收取能量而被好友收取的经历呢? 如果你不是蚂蚁森林重度用户,被别人收取了能量可能对你来说没什么. 但如果你是蚂蚁森林重度用户,遇到能量被偷 .. ...

  8. python 图像分析自然纹理方向与粗细代码_数字图像处理与Python实现笔记之基础知识...

    数字图像处理与Python实现笔记之基础知识 摘要 绪论 1 数字图像处理基础知识 1.1 数字图像简介 1.1.1 数字图像处理的目的 1.1.2 数字图像处理的应用 1.1.3 数字图像处理的特点 ...

  9. python md5加密和统一社会信用代码_统一社会信用代码校验位python实现

    18位统一代码最后一位计算方法如下: ``` def unioncode_checknum(code): alpha_to_num_map={'A':10,'B':11,'C':12,'D':13,' ...

  10. 禅道设置bug模板_禅道项目管理软件bug过滤剧本

    新公司运用禅道作bug治理体系.每次产物上线的时刻,一切的测试职员测试出bug之就就提在禅道上. 由于我们公司现在的测试只要一个,就把许多产物拉来充数.他们分不清bug和需求.所以每每涌现的状况是一大 ...

最新文章

  1. oracle 左取,oracle 取子串(转)
  2. c语言程序设计实验实训教程公众号,C语言程序设计基础知道答案公众号
  3. 'display','position'和'float'相互关系
  4. 7.2. cvs login | logout
  5. 20200621每日一句
  6. 课改 计算机 论文,计算机论文 计算机应用课改分析
  7. 好玩的软件 Aura 模拟自然界中的音效,让你置身大自然。
  8. 录制软件Bandicam安装教程
  9. pandas数据分析之分组聚合
  10. 用PS把人物皮肤处理的质感又通透
  11. const的意义及作用
  12. 体系结构实验(4)—— Tomasulo算法
  13. svn提交报错Unexpected HTTP status 413 'Request Entity Too Large' on
  14. donet还是java
  15. Server 2019 BPS Provisioning GPT DAX
  16. 你现在无法访问 blog.csdn.net,因为网站使用的是 hsts。网络错误和攻击通常是暂时
  17. matlab tikz,TeX系列: matlab2tikz--matlab图形数据转化为tikz命令
  18. 上传文件500 -内部服务器错误,怎样上传文件
  19. openlayers摸爬滚打 3.图层layer和feature的学习和简单例子
  20. C语言线程关闭会释放自动释放,[求助]关于C语言多线程内存释放的问题

热门文章

  1. 微信小程序发送微信公众号模板消息
  2. php中拼音转汉字,php 汉字拼音如何转换
  3. 什么是人工智能(AI)数据平台?
  4. linux用cat建文件,如何使用Linux cat命令
  5. 为什么大学没有前端课程?
  6. C语言 逻辑运算符及其优先次序(一)
  7. MacBook 自带输入法 中英文切换 搜狗输入法 安装 配置
  8. 一文了解中央银行数字货币CBDC的总体框架
  9. 关于购买域名的一些建议
  10. 八大数据结构-数组 栈 队列 链表 树 散列表 堆 图