利用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的gevent框架的入门教程
Apr 29 Python
python实现井字棋游戏
Mar 30 Python
Python代码实现KNN算法
Dec 20 Python
Python实现可自定义大小的截屏功能
Jan 20 Python
python3基于OpenCV实现证件照背景替换
Jul 18 Python
Python检查和同步本地时间(北京时间)的实现方法
Dec 03 Python
Python中一般处理中文的几种方法
Mar 06 Python
Python使用MyQR制作专属动态彩色二维码功能
Jun 04 Python
对Python3之方法的覆盖与super函数详解
Jun 26 Python
Flask框架重定向,错误显示,Responses响应及Sessions会话操作示例
Aug 01 Python
Python模块future用法原理详解
Jan 20 Python
Pycharm中如何关掉python console
Oct 27 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
php中json_encode中文编码问题分析
2011/09/13 PHP
php版微信小店调用api示例代码
2016/11/12 PHP
jquery实现瀑布流效果分享
2014/03/26 Javascript
JavaScript字符串对象replace方法实例(用于字符串替换或正则替换)
2014/10/16 Javascript
JavaScript判断表单提交时哪个radio按钮被选中的方法
2015/03/21 Javascript
Bootstrap模仿起筷首页效果
2016/05/09 Javascript
Node.js获取前端ajax提交的request信息
2017/02/20 Javascript
基于jquery日历价格、库存等设置插件
2020/07/05 jQuery
解决vue项目打包后提示图片文件路径错误的问题
2018/07/04 Javascript
JS中Promise函数then的奥秘探究
2018/07/30 Javascript
angular2实现统一的http请求头方法
2018/08/13 Javascript
javascript实现贪吃蛇经典游戏
2020/04/10 Javascript
解决Mint-ui 框架Popup和Datetime Picker组件滚动穿透的问题
2020/11/04 Javascript
打印出python 当前全局变量和入口参数的所有属性
2009/07/01 Python
跟老齐学Python之关于类的初步认识
2014/10/11 Python
python查看FTP是否能连接成功的方法
2015/07/30 Python
python修改txt文件中的某一项方法
2018/12/29 Python
修改 CentOS 6.x 上默认Python的方法
2019/09/06 Python
python 使用opencv 把视频分割成图片示例
2019/12/12 Python
Python TCPServer 多线程多客户端通信的实现
2019/12/31 Python
解决jupyter notebook打不开无反应 浏览器未启动的问题
2020/04/10 Python
如何用Matlab和Python读取Netcdf文件
2021/02/19 Python
10个很棒的 CSS3 开发工具 推荐
2011/05/16 HTML / CSS
沙龙级头发造型工具:FOXYBAE
2018/07/01 全球购物
就业推荐自我鉴定
2013/10/06 职场文书
教师个人自我鉴定
2014/02/08 职场文书
电子工程专业毕业生求职信
2014/03/14 职场文书
总结表彰大会主持词
2014/03/26 职场文书
五水共治捐款倡议书
2014/05/14 职场文书
2014年班务工作总结
2014/12/02 职场文书
python爬虫selenium模块详解
2021/03/30 Python
浅谈Nginx 中的两种限流方式
2021/03/31 Servers
Sleuth+logback 设置traceid 及自定义信息方式
2021/07/26 Java/Android
纯html+css实现打字效果
2021/08/02 HTML / CSS
Javascript之datagrid查询详解
2021/09/15 Javascript
python区块链持久化和命令行接口实现简版
2022/05/25 Python