前言:

时值毕业季,有不少小伙伴深受论文查重的困扰。因此我便想到做一个简单的自动去重的工具,先看看效果,我们再对原理或是代码实现做进一步的分析。

首先需要输入appid以及key,这些可以在百度翻译开放平台申请一个账号,可以免费申请一个账号。接着将需要进行降重的文本内容复制到相应的输入框内,点击开始按钮,即可输出不同但意思相近的语句,即达到降重去重的作用。点击复制按钮便可以将得到的新文本复制到剪贴板上,点击清楚按钮可以重新输入需要降重的文本,并且循环往复地进行。

去重原理

论文查重的粒度是句子,两个句子的相似度主要取决于句子包含哪些词,以及词在句子中的位置。句子相似度只是文字上的对比,不考虑语义上的相近。

正因如此,我们可以采取的措施便是变换句子结构,使用近似词替换。

为了完成这些句子的自动替换,从而达到降重的目的,这里很容易便想到利用不同语种之间的互相转换来生成新文本。比如在本工具中,我采用了中文→英文→韩文→中文的策略,你也可以采取更长的转换路径,但那样似乎会在很大程度上降低文本的可读性。

开放平台的使用

语句的翻译我采用了百度翻译开放平台的接口,简单地申请之后就可以获取每个月200万的免费字符翻译权限。

此API的接入方式略微有些麻烦,需要生成签名sign并且拼接完整的url。

def translate(q,lan_from,lan_to):url = 'http://api.fanyi.baidu.com/api/trans/vip/translate'salt = random.randint(1, 65536)sign = hashlib.md5((str(appid)+str(q)+str(salt)+str(key)).encode('utf-8')).hexdigest()params = {'from' :lan_from,'to' :lan_to,'salt' : salt,'sign' : sign,'appid' : appid,'q': q}r = requests.get(url,params=params)txt = r.json()if txt.get('trans_result', -1) == -1:print('ERROR Code:{}'.format(txt))return qreturn txt['trans_result'][0]['dst']

最后总结:

在弄清楚原理以及API的调用方法之后,我们可以轻松地写出一个GUI界面,也就是这个降重工具。当然这个工具非常初级,大家可以进行更加全面的扩展。最后希望能帮助到学弟学妹。

欢迎大家点赞,留言,转发,感谢大家的相伴与支持,想要了解更多Python知识以及想学好Python可以关注公众号:【Python的进阶之旅】有惊喜哦!

往期精彩文章:

python初学者,用python3实现基本的学生管理系统代码实例

大学四年毕业季我用Python写了一个论文降重工具(希望能帮助到学弟学妹)相关推荐

  1. 临近毕业季,您不需要一款论文降重工具保驾护航吗?

    临近毕业季,相信论文查重又一次成为一年一度的毕业生难题.有时候即便是自己一个一个码上去的,但还是和已发表的文献资料有极高的相似性.那么有没有什么好的办法可以高效辅助论文降重呢?答案是肯定的.今天就给大 ...

  2. 开源免费,electron+python制作图形化论文降重PC端工具

    小程序 为了更方便用户使用,也制作了免费"永久论文降重"微信小程序,具备更多的降重功能,欢迎体验. PC端论文降重工具 开源项目地址 https://github.com/imok ...

  3. 用 python 写了一个日记本

    写一个随机任务抽取器 一.前言 二.逻辑构思 2.1 目标实现 2.2 搭建开发环境 2.3 Pyinstaller 打包 三.效果展示 3.1 初始化和添加日记 3.2 查看日记 3.3 删除日记 ...

  4. 程序员的奋斗史(四十六)——大学断代史(十)——给学弟学妹们的忠告——终结篇

    文/温国兵 「写在前面」 大学断代史终于要完结了,就像一条再长的路总有终点一样.该系列文章前前后后写了一两个月,也该收尾了,至于收尾的文章,想了想,决定写写自己对学弟学妹的忠告.本篇文章以话题的形式呈 ...

  5. 用Python写了一个电子考勤系统!

    今天给大家分享一个比较有意思的Python应用,用 Python 写了一个电子考勤系统,源码已在文章全部给出,记得点赞收藏哦- 项目简介 学校现在需要实现一个电子考勤系统,考虑到你们班已经学过大数据应 ...

  6. 耗时半年,用 Python 写了一个电子考勤系统

    今天给大家分享一个比较有意思的 Python 应用,用 Python 写了一个电子考勤系统,源码获取在下方文章中给出,记得点赞收藏哦- 文章目录 电子考勤完整代码 项目简介 答题要求 附加功能 导入模 ...

  7. 用 Python 写了一个电子考勤系统!

    今天给大家分享一个比较有意思的Python应用,用 Python 写了一个电子考勤系统,源码已在文章全部给出,记得点赞收藏哦- 项目简介 学校现在需要实现一个电子考勤系统,考虑到你们班已经学过大数据应 ...

  8. 我用Python写了一个成语接龙的游戏,并把它部署到了手机上

    我用Python写了一个成语接龙的游戏,并把它部署到了手机上 成语大全数据 6月高考的前一天,我发布的一篇文章,决战高考,帮你秒变成语之王,当时只是把 http://chengyu.haoshiwen ...

  9. 为了帮女神完成钢琴家梦想,我用Python写了一个自动弹钢琴脚本,轻松弹奏出各种钢琴曲!

    事情是这样的,女神马上要毕业了,前两天跟我彻夜长谈,还说自己一直有个钢琴家的梦想. 这不为了帮女神圆梦,在我经过一番苦思冥想之后,终于用Python写了一个自动弹钢琴脚本,不会钢琴的都能成为钢琴家. ...

  10. 大学选修课实用计算机技术,【原创】写给大一学弟学妹:大一应该选修哪些实用有趣的选修课?...

    原标题:[原创]写给大一学弟学妹:大一应该选修哪些实用有趣的选修课? 今年2020届大一新生马上就要步入大学的生活.在网上看到很多同学都在问有关选修课的问题.那么大学的第一年选修课到底怎么选?是应该选 ...

最新文章

  1. redis 自减命令_Redis 实战 —— 04. Redis 数据结构常用命令简介
  2. 【尚硅谷】大厂必备技术之JUC并发编程——笔记总结
  3. 分分钟收入上万 她做到了网红最难的粉丝沉淀
  4. html编辑完后扩展名是,【填空题】使用文本编辑器编辑完HTML后,扩展名可以是 或 。...
  5. 【数据结构与算法】之深入解析“颜色分类”的求解思路与算法示例
  6. 如何设置Matlab输出到Word中图片的大小
  7. Foundation框架: 5.常用结构体知识补充
  8. 化工原理物性参数_化工原理知识点总结整理
  9. 关于索引我能说的那些事儿
  10. 用ViewPager实现轮播效果
  11. 【转】Java 项目UML反向工程转化工具
  12. angularjs外部文件中的控制器使用
  13. SosoApi,编辑Swagger UI的神器
  14. I210 网卡设定 force link mode 并关闭 EEE mode
  15. Excel选中单元格光标一直闪
  16. 为何丧尸只会攻击人类,而不“咬”动物?
  17. 程序设计考试大纲(高级程序员级)
  18. 删除Windows服务
  19. Ali,Tencent遭反垄断罚款!巨头们的蛮长时代要结束了?
  20. Python 经典面试题汇总之框架篇

热门文章

  1. Max Script|操作材质编辑器
  2. matlab语音信号的采集与处理,基于MATLAB的语音信号的采集与处理详解
  3. java记事本的代码_Java基础——第一个记事本代码与Java注释
  4. 软考_2021年11月真题2__三点估算技术
  5. 关于地图矢量下载器的使用感受
  6. 花店管理系统php网站,网上花店管理系统下载_网上花店管理系统官方下载-太平洋下载中心...
  7. Latex插入PPT矢量图
  8. 城市应急指挥系统详情分析及建设方案概述
  9. 【实用开发工具】将BAT脚本打包成exe可执行文件
  10. Java-RPC通信--HSF框架