利用python爬取有道词典的方法


Posted in Python onDecember 08, 2020

前言

大家好

​ 最近python爬虫有点火啊,啥python爬取马保国视频……我也来凑个热闹,今天我们来试着做个翻译软件……不是不是,说错了,今天我们来试着提交翻译内容并爬取翻译结果

主要内容

 材料

1.Python 3.8.4

2.电脑一台(应该不至于有”穷苦人家“连一台电脑都没有吧)

3.Google浏览器(其他的也行,但我是用的Google)

写程序前准备

打开Google浏览器,找的有道词典的翻译网页(http://fanyi.youdao.com/)

打开后摁F12打开开发者模式,找Network选项卡,点击Network选项卡,然后刷新一下网页

然后翻译一段文字,随便啥都行(我用的程序员的传统:hello world),然后点击翻译

在选项卡中找到以translate开头的post文件

利用python爬取有道词典的方法

箭头的地方才是真正的提交地址

记住他,写代码时要用

利用python爬取有道词典的方法

这个是提交电脑的基本信息,记住他,等会儿要用,等会儿伪装成电脑时可以用,因为电脑会有基本信息,而如果是python的话会显示成python3.8.4(因为我的版本是3.8.4),从而容易被服务器禁入

利用python爬取有道词典的方法

等会儿还要用

好,准备工作做完了,接下来开始干正事了

开始编写爬虫代码

下面是我写的代码,具体我就不细说了

#导入urllib库
import urllib.request
import urllib.parse
import json

while True: #无限循环
 content = input("请输入您要翻译的内容(输入 !!! 退出程序): ")
 #设置退出条件
 if content == '!!!':
  break

 url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' #选择要爬取的网页,上面找过了
 #加上一个帽子,减少被发现的概率(下面head列表的内容就是上面找的)
 head = {}
 head['User - Agent'] = '请替换'

 #伪装计算机提交翻译申请(下面的内容也在在上面有过,最好根据自己的进行修改)
 data = {}
 data['type'] = 'AUTO'
 data['i'] = content
 data['doctype'] = 'json'
 data['version'] = '2.1'
 data['keyfrom:'] = 'fanyi.web'
 data['ue'] = 'UTF-8'
 data['typoResult'] = 'true'
 data = urllib.parse.urlencode(data).encode('utf-8')

 response = urllib.request.urlopen(url, data)
 #解码
 html = response.read().decode('utf-8')

 paper = json.loads(html)

 #打印翻译结果
 print("翻译结果: %s" % (paper['translateResult'][0][0]['tgt']))

运行结果

利用python爬取有道词典的方法

到此这篇关于python爬取有道词典的文章就介绍到这了,更多相关python有道词典内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python发送伪造的arp请求
Jan 09 Python
python在命令行下使用google翻译(带语音)
Jan 16 Python
python操作xml文件示例
Apr 07 Python
简单了解什么是神经网络
Dec 23 Python
ubuntu 16.04下python版本切换的方法
Jun 14 Python
PyQt5根据控件Id获取控件对象的方法
Jun 25 Python
python实现输入任意一个大写字母生成金字塔的示例
Oct 27 Python
python3实现弹弹球小游戏
Nov 25 Python
如何更改 pandas dataframe 中两列的位置
Dec 27 Python
Python selenium使用autoIT上传附件过程详解
May 26 Python
python中执行smtplib失败的处理方法
Jul 01 Python
Python利器openpyxl之操作excel表格
Apr 17 Python
Python控制鼠标键盘代码实例
Dec 08 #Python
Pycharm-community-2020.2.3 社区版安装教程图文详解
Dec 08 #Python
解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy installation (‘D:\\python3.6\\lib\\site-packa的问题
Dec 08 #Python
Python爬虫之App爬虫视频下载的实现
Dec 08 #Python
Python爬虫进阶之爬取某视频并下载的实现
Dec 08 #Python
selenium框架中driver.close()和driver.quit()关闭浏览器
Dec 08 #Python
Python hashlib和hmac模块使用方法解析
Dec 08 #Python
You might like
通过ICQ网关发送手机短信的PHP源程序
2006/10/09 PHP
PHP缓存技术的多种方法小结
2012/08/14 PHP
Win下如何安装PHP的APC拓展
2013/08/07 PHP
ThinkPHP内置jsonRPC的缺陷分析
2014/12/18 PHP
php strftime函数获取日期时间(switch用法)
2018/05/16 PHP
Yii2框架操作数据库的方法分析【以mysql为例】
2019/05/27 PHP
php使用redis的几种常见操作方式和用法示例
2020/02/20 PHP
Javascript 圆角div的实现代码
2009/10/15 Javascript
jQuery 渐变下拉菜单
2009/12/15 Javascript
jQuery 网易相册鼠标移动显示隐藏效果实现代码
2013/03/31 Javascript
jquery删除数据记录时的弹出提示效果
2014/05/06 Javascript
JavaScript实现图片滑动切换的代码示例分享
2016/03/06 Javascript
js自定义select下拉框美化特效
2016/05/12 Javascript
JS控件bootstrap datepicker使用方法详解
2017/03/25 Javascript
nodejs中用npm初始化来创建package.json的实例讲解
2018/10/10 NodeJs
JS+CSS+HTML实现“代码雨”类似黑客帝国文字下落效果
2020/03/17 Javascript
javascript执行上下文、变量对象实例分析
2020/04/25 Javascript
Vue性能优化的方法
2020/07/30 Javascript
详解如何在Javascript中使用Object.freeze()
2020/10/18 Javascript
写一个Vue loading 插件
2020/11/09 Javascript
python 判断自定义对象类型
2009/03/21 Python
Python函数式编程指南(四):生成器详解
2015/06/24 Python
django反向解析和正向解析的方式
2018/06/05 Python
使用Python机器学习降低静态日志噪声
2018/09/29 Python
解决Python运行文件出现out of memory框的问题
2018/12/03 Python
Python根据成绩分析系统浅析
2019/02/11 Python
Python虚拟环境的原理及使用详解
2019/07/02 Python
Python Merge函数原理及用法解析
2020/09/16 Python
python 实现性别识别
2020/11/21 Python
浅析python实现动态规划背包问题
2020/12/31 Python
使用CSS3来制作消息提醒框
2015/07/12 HTML / CSS
HTML5 使用 sessionStorage 进行页面传值的方法
2018/07/02 HTML / CSS
密封类可以有虚函数吗
2014/08/11 面试题
大学生感恩父母演讲稿
2014/08/28 职场文书
2016年第104个国际护士节活动总结
2016/04/06 职场文书
小程序实现侧滑删除功能
2022/06/25 Javascript