利用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 相关文章推荐
利用ctypes提高Python的执行速度
Sep 09 Python
Python中用post、get方式提交数据的方法示例
Sep 22 Python
你真的了解Python的random模块吗?
Dec 12 Python
Django处理文件上传File Uploads的实例
May 28 Python
使用Python快速搭建HTTP服务和文件共享服务的实例讲解
Jun 04 Python
Python 字符串与二进制串的相互转换示例
Jul 23 Python
Python多进程池 multiprocessing Pool用法示例
Sep 07 Python
对python添加模块路径的三种方法总结
Oct 16 Python
python按行读取文件并找出其中指定字符串
Aug 08 Python
opencv设置采集视频分辨率方式
Dec 10 Python
利用python对excel中一列的时间数据更改格式操作
Jul 14 Python
python打包多类型文件的操作方法
Sep 21 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翻页类
2009/06/01 PHP
php文件下载处理方法分析
2015/04/22 PHP
php随机获取金山词霸每日一句的方法
2015/07/09 PHP
PHP实现获取某个月份周次信息的方法
2015/08/11 PHP
PHP模块化安装教程
2016/06/01 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
HR vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
ExtJS TabPanel beforeremove beforeclose使用说明
2010/03/31 Javascript
基于Jquery的动态创建DOM元素的代码
2010/12/28 Javascript
Angularjs中$http以post请求通过消息体传递参数的实现方法
2016/08/05 Javascript
Angular ng-repeat 对象和数组遍历实例
2016/09/14 Javascript
js实现table添加行tr、删除行tr、清空行tr的简单实例
2016/10/15 Javascript
详解前端构建工具gulpjs的使用介绍及技巧
2017/01/19 Javascript
vue-router 导航钩子的具体使用方法
2017/08/31 Javascript
Vue 2.0入门基础知识之内部指令详解
2017/10/15 Javascript
JavaScript对JSON数组简单排序操作示例
2019/01/31 Javascript
微信小程序页面滚动到指定位置代码实例
2019/09/07 Javascript
express中static中间件的具体使用方法
2019/10/17 Javascript
JS实现简单移动端鼠标拖拽
2020/07/23 Javascript
JS实现无限轮播无倒退效果
2020/09/21 Javascript
简单介绍Python中的JSON模块
2015/04/08 Python
Python数据分析之真实IP请求Pandas详解
2016/11/18 Python
Python爬虫设置代理IP(图文)
2018/12/23 Python
python实现ping命令小程序
2020/12/28 Python
Timex手表官网:美国运动休闲手表品牌
2017/01/28 全球购物
乔丹诺(Giordano)酒庄德国官网:找到最好的意大利葡萄酒
2017/12/28 全球购物
院药学专业个人求职信
2013/09/21 职场文书
医学专业毕业生推荐信
2013/11/14 职场文书
小学毕业家长寄语
2014/01/19 职场文书
12月小学生校园广播稿
2014/02/04 职场文书
求职简历自我评价范例
2014/03/12 职场文书
水电维修专业推荐信
2014/09/06 职场文书
校园环境卫生倡议书
2015/04/29 职场文书
你会写请假条吗?
2019/06/26 职场文书
Python 用户输入和while循环的操作
2021/05/23 Python
redis数据结构之压缩列表
2022/03/21 Redis