python有道翻译功能简单的爬取

首先点开有道翻译官网,审查元素查看Network一栏,输入翻译内容获取translate信息(真正用到翻译功能的就是这个URL)

添加headers信息,代码如下

    url = 'http://fanyi.youdao.com/translate?_osmartresult=dict&smartresult=rule''''head = {}head['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3722.400 QQBrowser/10.5.3751.400''''

##添加Form Data表单数据到爬虫的字典Data中

这里有两个参数是变化的,第一个是时间戳,第二个是时间戳+翻译内容返回的加密信息
salt: 15835456352950
sign: ae42ec1e55072dcee76885e8cdc7ec42
这里涉及到网页加密的方法,有很多解决方法,这里采用最简单的方法,删除URL中的_o,可以将对应的这两个参数删除,实现绕过反爬虫机制

    url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'//将url中的_o删除,以此来删除salt和sign两个参数,来绕过反爬虫'''head = {}head['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3722.400 QQBrowser/10.5.3751.400''''data = {}data['i'] = contentdata['from'] = 'AUTO'data['to'] = 'AUTO'data['smartresult'] = 'dict'data['client'] = 'fanyideskweb'data['doctype'] = 'json'data['version'] = '2.1'data['keyfrom'] = 'fanyi.web'data['action'] = 'FY_BY_CL1CKBUTTON'data = urllib.parse.urlencode(data).encode('utf-8')

调用python的urllib库方法,最后加上循环功能实现多次输入
完整代码如下:

import urllib.request
import urllib.parse
import json
import timewhile True:content = input('请输入需要翻译的内容(输入"57K"退出程序):')if content == '57K':breakurl = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule''''head = {}head['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3722.400 QQBrowser/10.5.3751.400''''data = {}data['i'] = contentdata['from'] = 'AUTO'data['to'] = 'AUTO'data['smartresult'] = 'dict'data['client'] = 'fanyideskweb'data['doctype'] = 'json'data['version'] = '2.1'data['keyfrom'] = 'fanyi.web'data['action'] = 'FY_BY_CL1CKBUTTON'data = urllib.parse.urlencode(data).encode('utf-8')request = urllib.request.Request(url,data,)request.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3722.400 QQBrowser/10.5.3751.400')response = urllib.request.urlopen(request)html = response.read().decode('utf-8')target = json.loads(html)print("翻译结果是:%s" % (target['translateResult'][0][0]['tgt']))time.sleep(1)

实现界面如下

使用Python爬取简单的有道翻译功能相关推荐

  1. Python爬取简单网页内容

    Python爬取简单网页内容 分享一下第一次学习爬虫的过程.之前一直有听说过爬虫,但是也没有接触过爬虫.在需要爬取网页信息的时候,才开始着手学习爬虫.Python爬虫有很多种方法,例如使用scrapy ...

  2. python 爬取简单静态网站之电影天堂

    大家好.今天我在这里与大家分享一下简单的网页抓取. 一.准备工作:下载并安装好python3.x,并且配置好环境变量. 二. 检查安装的软件是否可用:在cmd窗口下分别输入python -V  命令 ...

  3. Python 爬取简单网页

    1 import urllib.request 2 url = "http://www.baidu.com/s?wd=" #get网址格式:"https://www.ba ...

  4. python爬取toefl_spark学习进度6-Python爬取数据的四个简单实例

    今天本来想把昨天安装的intellij配置好,但是一直显示没有网络,网上查了相关资料也没有查出来解决办法. 然后暂停了intellij的配置,开始做了几个Python爬取简单数据的实例,先做了几个最简 ...

  5. Python爬取并简单分析2024年普通高校招生专业(专业类)选考科目要求

    推荐教材: <Python网络程序设计(微课版)>,ISBN:978-7-302-58312-7,董付国,清华大学出版社,2021年8月出版,京东.当当.淘宝均有销售 配套资源: 教学大纲 ...

  6. python 爬取有道词典的翻译 *渔夫版

    前言 在小甲鱼课程里学习到的python爬取有道词典的翻译,发现一些东西不是很适用于现在,网上给出的答案分为两种 一.去掉 "_o" import urllib.request i ...

  7. python爬取歌曲评论_python 爬取歌曲评论的简单示例

    这篇文章主要为大家详细介绍了python 爬取歌曲评论的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣python 爬取歌曲评论的简单示例的小伙伴,下面一起跟随512笔记的小编罗X来看看吧. ...

  8. python实战(一)Python爬取猫眼评分排行前100电影及简单数据分析可视化python实战(一)Python爬取猫眼排行前一百电影及简单数据分析可视化

    python实战(一)Python爬取猫眼排行前一百电影及简单数据分析可视化 一.抓取数据 需要的库 request库 响应http请求 json库 将文本保存成json形式 pyquery 类似JQ ...

  9. python实战(一)Python爬取猫眼评分排行前100电影及简单数据分析可视化

    python实战(一)Python爬取猫眼排行前一百电影及简单数据分析可视化 一.抓取数据 需要的库 request库 响应http请求 json库 将文本保存成json形式 pyquery 类似JQ ...

最新文章

  1. explicit关键字
  2. 总是多次出现 那个同样的 权限错误 _storage_write_error_, 所以一开始就把机器设好setenforce 0...
  3. Excel 单元格不能设置超链接
  4. ibatis学习笔记(三)java实体跟表映射.xml文件详解
  5. PostgreSQL SystemTap on Linux 转
  6. mysql for windows zip版安装
  7. 「客户成功故事」OneAPM 助力网上办事大厅构建阳光、高效、安全的政务服务平台...
  8. leetcode 932. Beautiful Array | 932. 漂亮数组(分治法)
  9. 5分钟掌握var,let和const异同
  10. Oracle网格控制器OMA端安装Yast
  11. 如何查看系统启动时间-转
  12. PID算法原理 一图看懂PID的三个参数
  13. Unity3D 2018版本 Post Process 后期处理插件使用介绍
  14. 计算机磁盘分为硬盘和什么,win10磁盘分区合并的方法是什么_win10电脑分盘怎么合并...
  15. 3458A数字多用表的4线制电阻测量方法
  16. codeforces838D - Airplane Arrangements
  17. Datahero inc智能合约技术重塑供应链金融模式
  18. 懂车帝上配置高的国产车为什么那么便宜?
  19. 解决回溯法 - 回溯到底是个什么东西(含有大量经典例题加详细分析)
  20. Python大师!UE5的御用布景师

热门文章

  1. Lightoj_1422
  2. 2022年西安市施工员(装修装饰)考试练习题及答案
  3. Oracle数据库案例学习系列文章
  4. python的rich终端显示
  5. Windows10自带输入法中文模式下,总是输出英文标点符号怎么回事呢?
  6. 图像修复方法总结以及深度学习的论文汇总(更新中。。。)
  7. 【AFSA TSP】基于matlab改进的人工鱼群算法求解旅行商问题【含Matlab源码 1479期】
  8. 在网页中添加即时翻译器stardict
  9. java农机收割机租赁预约系统springboot+Vue
  10. MacOS 系统中iTunes 降低版本