数据百变系列——用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 复制代码
提取内容:我是一个冷笑话

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

相关推荐
yzzzzzzzzzzzzzzzzz几秒前
初识javascript
前端·javascript
excel1 小时前
硬核 DOM2/DOM3 全解析:从命名空间到 Range,前端工程师必须掌握的底层知识
前端
Hy行者勇哥2 小时前
Python 与 VS Code 结合操作指南
开发语言·python
大力水手(Popeye)2 小时前
Pytorch——tensor
人工智能·pytorch·python
飞翔的佩奇6 小时前
【完整源码+数据集+部署教程】表盘指针检测系统源码和数据集:改进yolo11-CA-HSFPN
python·yolo·计算机视觉·数据集·yolo11·表盘指针检测
larance6 小时前
SQLAlchemy 的异步操作来批量保存对象列表
数据库·python
搏博7 小时前
基于Python3.10.6与jieba库的中文分词模型接口在Windows Server 2022上的实现与部署教程
windows·python·自然语言处理·flask·中文分词
lxmyzzs8 小时前
pyqt5无法显示opencv绘制文本和掩码信息
python·qt·opencv
专注API从业者8 小时前
Python + 淘宝 API 开发:自动化采集商品数据的完整流程
大数据·运维·前端·数据挖掘·自动化
萧鼎9 小时前
Python pyzmq 库详解:从入门到高性能分布式通信
开发语言·分布式·python