数据百变系列——用Python盲水印保护自己写的文章

本文是数据百变系列的第一篇,后续还将有以下文章,关注获取更多动态+

  • 使图片在不同的背景下显示不同的图片
  • 把数据以图片形式存放
  • 把数据藏在一个图片中
  • 把图片和文件黏在一起,并存为图片
  • 把一段信息放到图片的EXIF中
  • 把数据以音频的形式存放
  • 把数据隐藏在一个音频中
  • 把数据以文本文件的形式存放
  • 把数据隐藏在一段文本中

背景

身为程序员, 一定看过或者写过技术文章,国内体量最大的技术论坛莫属某四字网站了,但是这网站有个弊病,抄袭横行,甚至会出现抄袭&洗稿的文章比原文权重都高,估计在座的都深受其害,这时候给自己的文章加个盲水印就十分必要了,并且盲水印还有以下用途:

  1. 保护版权:在数字化时代,文本可以很容易地被复制、传播和篡改,盲水印可以帮助作者或出版商在文本中嵌入不可见的标识,以证明其版权。
  2. 内容追踪:在大规模的信息传播中,盲水印可以用于追踪信息的传播路径和使用情况,从而提供有关信息的分析和监控。
  3. 防伪验证:盲水印可以用于验证文本的真实性和完整性,防止信息被篡改或伪造。
  4. 数据溯源:盲水印可以用于追溯数据的来源和使用情况,对于研究、法律调查等领域具有重要意义。

以后投诉盗版又多了一个证据

样例

以下是一篇刚出炉的冷笑话:

text 复制代码
当程序员走进酒吧,服务员问道:"你们这里有没有Wi-Fi?" 
程序员回答:"不,我们这里使用Ethernet。" 
服务员一脸茫然地说:"那又是什么?" 
程序员笑着解释道:"就是一根看起来像面条的东西,用来连接网络。" 
服务员忍不住笑了起来,说:"难怪我总觉得饭菜来得这么快!原来都是靠一根面条传输的!"

如果不加水印,很容易被盗版,可以使用以下代码添加盲水印:

python 复制代码
from text_blind_watermark import TextBlindWatermark2

password = '炼数成金'
text = '''当程序员走进酒吧,服务员问道:"你们这里有没有Wi-Fi?" 
程序员回答:"不,我们这里使用Ethernet。" 
服务员一脸茫然地说:"那又是什么?" 
程序员笑着解释道:"就是一根看起来像面条的东西,用来连接网络。" 
服务员忍不住笑了起来,说:"难怪我总觉得饭菜来得这么快!原来都是靠一根面条传输的!"'''
watermark = '我是一个冷笑话'
text_blind_wm = TextBlindWatermark2(password=password)
text_with_wm = text_blind_wm.embed(text=text, watermark=watermark)
print(text_with_wm)

输出结果

text 复制代码
当程序员走进酒吧,服务员问道:"你们这里有没有Wi-Fi?" 
程序员回答:"不,我们这里使用Ethernet。" 
服务员一脸茫然地说:"那又是什么?" 
程序员笑着解释道:"就是一根看起来像面条的东西,用来连接网络。" 
服务员忍不住笑了起来,说:"难怪我总觉得饭菜来得这么快!原来都是靠一根面条传输的!"

看起来是不是和最开始的没有差别,毕竟盲水印,如果看到了那就是普通水印了 但是当你用以下代码处理时,就能输出加进去的水印了

python 复制代码
text_blind_wm_new = TextBlindWatermarkThin(password=password)
wm_extract = text_blind_wm_new.extract(text_embed)
print('提取内容:', wm_extract)

输出内容

text 复制代码
提取内容:我是一个冷笑话

目前这个方法,就算经过复制粘贴,或者微信等通讯软件发送,也能保证盲水印一直在,针对简单的文本数据防盗版还是有一定的保护效果

相关推荐
葡萄城技术团队6 小时前
1000 人协同压测的环境瓶颈排查:CPU 争用与 Wi\-Fi
前端
第九序言T7 小时前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
Java后端的Ai之路7 小时前
CAS并发控制-从CPU指令到企业级乐观锁
vue.js·人工智能·python·cas·乐观锁
qq_426003967 小时前
UI自动化高频次登录login限流解决方案
python·ui·自动化
Sakura_j_h_7 小时前
EasyEDA PCB 快速设计Skills
c++·python·github
excel7 小时前
Marked 与 Markdown 有什么区别?该怎么选?
前端
Da Da 泓8 小时前
五子棋 Web 端测试用例报告
前端·网络·websocket·网络协议·测试用例·项目
quantdash_cc8 小时前
如何验证历史行情的交易日期是否完整覆盖研究区间?
python·数据分析·pandas·量化交易·股票数据·quantdash
I Am a robert girl8 小时前
当智能体学会“串通”:从长程交互中读懂涌现式合谋
python·多智能体系统·多智能体协作·llm agent·涌现式合谋·对齐问题·激励机制设计
云和数据.ChenGuang9 小时前
光哥说Python RAG 系统需要哪些评估指标:从检索到生成的全链路评测指南
网络·人工智能·python·算法·langchain