社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python 绝招:解锁小红书信息流的无限潜力!

AirPython • 1 年前 • 337 次点击  

大家好,我是安果!

相信近两年大家经常会听到 信息差 」这个词,它确实可以为个人带来竞争优势,并提高个人决策的质量。与此同时,积极获取信息差也是一种重要的能力

最近在小红书闲逛时,发现有这么一类号主,他们专门整理城市每天的信息(包含:新闻、房产、招聘、演唱会、美食羊毛等)进行发布

他们以此获取同城流量,然后转化到私域流量进行变现

本篇文章将介绍如何利用 Python 一键生成这类信息流数据

1、Markdown 文件

发布到小红书的素材都是图片,利用 Python 生成图片有多种方式

比如:Pillow、OpenCV 直接生成一张图片,然后往里面写入内容

这种方式有一个缺点,就是生成的图片不够灵活,需要反复调试

所以这里推荐另外一种方式,即:按 Markdown 语法将内容写入到文件中

# markdown文件写入语法
# 标题栏:居中、设置字体大小、加粗
file.write("<div align='center' ><font size='30'><b>深圳大事件(7月16日)b>font>div>")

# 小号标题
file.write("## 【新闻】\n\n")

# 关键内容标为红色,加粗,比如:金额
file.write("92号汽油: <font color=red><b>7.60元b>font>元\n\n")

# 空格及换行
file.write("...    ...\n\n")

我们只需要将爬取的内容按 Markdown 文件格式进行一次组装,然后写入到 Markdown 文件中

def write_md_file(md_file, content):
    """
    # 写入到markdown文件中
    :param md_file: markdown文件
    :param content: 内容
    :return: 
    """

    with open(md_file, 'w', encoding='utf-8'as file:
        file.write(content)

2、转为 PDF

这一步,我们将 Markdown 文件转换为 PDF 文件

首先,需要安装依赖

# 依赖
pip3 install markdown 
pip3 install pdfkit 
pip3 install wkhtmltopdf

然后,读取 Markdown 文件,转为 HTML,并写入到一个临时的 HTML 文件中

PS:由于包含中文,这里写入 HTML 时指定字符编码为 utf-8

import markdown
import pdfkit

def markdown_to_pdf(md_file, pdf_file, html_file):
    """
    将Markdown文件转为PDF文件
    :param md_file: Markdown文件
    :param pdf_file: PDF文件
    :param html_file: 临时的HTML文件
    :return:
    """

    # 读取文件内容
    with open(md_file, "r", encoding="utf-8"as f:
        text = f.read()
    html = markdown.markdown(text)

    # 写入到HTML文件中
    with open(html_file, "w", encoding="utf-8"as f:
        f.write("")
        f.write(html)
    pdfkit.from_file(html_file, pdf_file)

最后,需要手动安装 wkhtmltopdf,不然运行会报 No wkhtmltopdf executable found 的异常

以 windows 为例,只需要下载对应的可执行文件进行安装,配置环境变量即可

https://github.com/JazzCore/python-pdfkit/wiki/Installing-wkhtmltopdf

3、转为图片

这样需要安装依赖 fitz

# 安装依赖
pip3 install fitz
pip3 install PyMuPDF

接着,需要打开 PDF 文件,逐页进行读取,然后在本地生成多张图片

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/157864
 
337 次点击