东莞一站式网站推广运营,廊坊网页模板建站,汕头建站,外贸网站建设教程文章目录 前言文档增加联系方式扩散网盘扩散自建网站借力 注意 前言
很多人在找资料的时候可能都遇到过下图情况#xff1a; 1、文档最后面留一个自己的联系方式#xff1b; 2、找的一堆文件中都有相同的情况#xff1b; 3、一段时间全网搜到的很多相同文件也有这个联系方式… 文章目录 前言文档增加联系方式扩散网盘扩散自建网站借力 注意 前言
很多人在找资料的时候可能都遇到过下图情况 1、文档最后面留一个自己的联系方式 2、找的一堆文件中都有相同的情况 3、一段时间全网搜到的很多相同文件也有这个联系方式。
那么这个怎么做的今天我们来亲自试验一下。 文档增加联系方式
我们看到的文档可能有PDF、word首先我们来看看word当怎么处理word一般会有两种后缀名doc、docxdocx比较好处理是基于XML的而doc格式的文档是一个较老的、二进制格式的文件。所以我们需要把doc转换成docx文档后再批量添加图片。
还有一个问题就是我电脑是MAC一般我们会用到win32com来处理doc文档转换但是mac不支持所以我们要用到另外一个工具LibreOffice 需要下载安装后配置环境变量。
下载官网https://www.libreoffice.org/
安装后正常配置环境变量哦
下面我们来看看具体代码
import os
import subprocess
from docx import Document
from docx.shared import Inches
from docx.enum.text import WD_ALIGN_PARAGRAPHdef convert_doc_to_docx(doc_path):使用LibreOffice将DOC文件转换为DOCX文件docx_path doc_path xsubprocess.run([/Applications/LibreOffice.app/Contents/MacOS/soffice, --headless, --convert-to, docx, doc_path, --outdir, os.path.dirname(doc_path)])return docx_pathdef add_image_to_docx(docx_path, image_path):在DOCX文档末尾添加居中的图片doc Document(docx_path)p doc.add_paragraph()run p.add_run()run.add_picture(image_path, widthInches(2.0)) # 图片大小可以根据需要调整paragraph_format p.paragraph_formatparagraph_format.alignment WD_ALIGN_PARAGRAPH.CENTERdoc.save(docx_path)def convert_docx_to_pdf(docx_path):使用LibreOffice将DOCX文件转换为PDFsubprocess.run([/Applications/LibreOffice.app/Contents/MacOS/soffice, --headless, --convert-to, pdf, docx_path, --outdir, os.path.dirname(docx_path)])def process_folder(folder_path, image_path):处理文件夹中的所有DOC和DOCX文件for filename in os.listdir(folder_path):file_path os.path.join(folder_path, filename)if filename.endswith(.doc):docx_path convert_doc_to_docx(file_path)add_image_to_docx(docx_path, image_path)convert_docx_to_pdf(docx_path)os.remove(docx_path) # 删除转换后的DOCX文件print(fProcessed {filename})elif filename.endswith(.docx):add_image_to_docx(file_path, image_path)convert_docx_to_pdf(file_path)print(fProcessed {filename})# 调用函数
folder_path path/to/your/documents # 替换为你的文档所在的目录
image_path path/to/your/image.jpg # 替换为你要添加的图片的路径
process_folder(folder_path, image_path)
接下来我们看一下PDF怎么处理PDF比较特殊的就是加密的文件了这种文件没办法直接写需要创建新文件把内容copy进去后在最后面增加图片。 具体代码如下
import os
import fitz # PyMuPDFdef add_image_to_pdf_centered(pdf_path, image_path):在PDF文档的最后添加一个新页面并在其中居中插入一张图片# 打开原始PDFpdf_doc fitz.open(pdf_path)# 获取PDF的尺寸以适配新页面if pdf_doc.page_count 0:page pdf_doc[0]page_width, page_height page.rect.width, page.rect.heightelse:# 如果PDF为空使用默认的A4尺寸page_width, page_height fitz.paper_rect(a4).size# 添加新页面pdf_doc.new_page(widthpage_width, heightpage_height)# 计算图片的位置以使其居中img fitz.open(image_path)img_width, img_height img[0].rect.width, img[0].rect.heightscale min(page_width / img_width, page_height / img_height)new_width, new_height img_width * scale, img_height * scalex1 (page_width - new_width) / 2y1 (page_height - new_height) / 2rect fitz.Rect(x1, y1, x1 new_width, y1 new_height)# 在新页面上插入居中的图像last_page pdf_doc[-1]last_page.insert_image(rect, filenameimage_path)# 保存修改后的PDF重写整个文件new_pdf_path pdf_path.replace(.pdf, _new.pdf) # 创建新文件以避免覆盖原文件pdf_doc.save(new_pdf_path)pdf_doc.close()# 调用函数
folder_path path/to/your/documents # 替换为你的文档所在的目录
image_path path/to/your/image.jpg # 替换为你要添加的图片的路径for filename in os.listdir(folder_path):if filename.endswith(.pdf):pdf_path os.path.join(folder_path, filename)add_image_to_pdf_centered(pdf_path, image_path)print(fImage added to {filename})当然我们也可以把两个脚本合并直接一把梭。
import os
import fitz # PyMuPDF
import subprocess
from docx import Document
from docx.shared import Inches
from docx.enum.text import WD_ALIGN_PARAGRAPH# 处理PDF的函数
def add_image_to_pdf_centered(pdf_path, image_path):pdf_doc fitz.open(pdf_path)if pdf_doc.page_count 0:page pdf_doc[0]page_width, page_height page.rect.width, page.rect.heightelse:# 使用默认的A4尺寸page_width, page_height fitz.paper_rect(a4).sizepdf_doc.new_page(widthpage_width, heightpage_height)img fitz.open(image_path)img_width, img_height img[0].rect.width, img[0].rect.heightscale min(page_width / img_width, page_height / img_height)new_width, new_height img_width * scale, img_height * scalex1 (page_width - new_width) / 2y1 (page_height - new_height) / 2last_page pdf_doc[-1]last_page.insert_image(fitz.Rect(x1, y1, x1 new_width, y1 new_height), filenameimage_path)new_pdf_path pdf_path.replace(.pdf, _new.pdf)pdf_doc.save(new_pdf_path)pdf_doc.close()# 处理Word的函数
def convert_doc_to_docx(doc_path):docx_path doc_path xsubprocess.run([/Applications/LibreOffice.app/Contents/MacOS/soffice, --headless, --convert-to, docx, doc_path, --outdir, os.path.dirname(doc_path)])return docx_pathdef add_image_to_docx(docx_path, image_path):doc Document(docx_path)p doc.add_paragraph()run p.add_run()run.add_picture(image_path, widthInches(2.0))paragraph_format p.paragraph_formatparagraph_format.alignment WD_ALIGN_PARAGRAPH.CENTERdoc.save(docx_path)def convert_docx_to_pdf(docx_path):subprocess.run([/Applications/LibreOffice.app/Contents/MacOS/soffice, --headless, --convert-to, pdf, docx_path, --outdir, os.path.dirname(docx_path)])# 综合处理函数
def process_files(folder_path, image_path):for filename in os.listdir(folder_path):file_path os.path.join(folder_path, filename)if filename.endswith(.pdf):add_image_to_pdf_centered(file_path, image_path)print(fImage added to {filename})elif filename.endswith(.doc):docx_path convert_doc_to_docx(file_path)add_image_to_docx(docx_path, image_path)convert_docx_to_pdf(docx_path)os.remove(docx_path) # 删除转换后的DOCX文件print(fProcessed {filename})elif filename.endswith(.docx):add_image_to_docx(file_path, image_path)convert_docx_to_pdf(file_path)print(fProcessed {filename})# 设置文件夹和图片路径
folder_path path/to/your/documents # 替换为你的文档所在的目录
image_path path/to/your/image.jpg # 替换为你要添加的图片的路径# 调用处理函数
process_files(folder_path, image_path)
至此我们就可以把我们的文档全部添加自己的联系方式。
扩散
有了文档我们就可以进行扩散了介绍几个我了解的方式
网盘扩散
通过网盘把自己文件放在网盘中然后再通过文章等传播即可。
这种可能很多人要看电影的时候也会遇到你搜到的电影文档内没有内容只有一个联系方式让你加联系方式进群后再把相关的视频发你达到引流作用。
自建网站
可以自己建一个网站把所有文档放在服务器然后让大家去下载。
当然很多人说这样子的话我直接在网站首页留联系方式不是更直接这个有其他可能就是有些人在你网站下载了文件给了他的朋友看这是不是间接传播了。
借力
我们可以找一些类似于百度文库、还有其他的学习论坛有收集文档的情况我们把自己的文档上传借助这些平台的流量扩大文档被检索的可能。
注意
很多文档可能有版权这个要注意。
很多平台会检测文档中是否有联系方式等违规的内容。