何不乘东风?利用mcp实现小红书自动发布
1.准备环境
conda create -n mcpo python=3.11
conda activate mcpo
pip install mcpo
pip install uvnpx @puppeteer/browsers install chromedriver@134.0.6998.166pip install xhs-mcp-server
2.进行登陆
env phone=YOUR_PHONE_NUMBER json_path=PATH_TO_STORE_YOUR_COOKIES uvx --from xhs_mcp_server@latest login#这里的json_path是你登录后放cookie的路径
输入验证码,(记住验证码一定要再黑窗口输入,不要直接在页面登录)就会自动登录
env phone=YOUR_PHONE_NUMBER json_path=PATH_TO_STORE_YOUR_COOKIES uvx --from xhs_mcp_server@latest login
再来一遍验证,如果显示“使用cookies登录成功”就登陆成功啦。
3.直接实现
1)原生代码调用小红书的mcp服务实现自动发布
import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_clientasync def main():# 配置 MCP 服务的启动命令和参数server_params = StdioServerParameters(command="/Users/v_chenxinhao/miniconda3/envs/mcpo/bin/python",args=["-m", "xhs_mcp_server"],env={"phone": "xxxx","json_path": "/Users/v_chenxinhao/Desktop/20250122/xiaohongshu"})# 使用 stdio_client 启动 MCP 服务器并获取读写流async with stdio_client(server_params) as (read_stream, write_stream):# 创建 MCP 客户端会话async with ClientSession(read_stream, write_stream) as session:# 初始化会话await session.initialize()# 发送请求并接收响应response = await session.call_tool("create_note",arguments={"title": "示例标题","content": "这是一个示例内容。","images": ["/Users/v_chenxinhao/Desktop/20250324/images.png"]}
)print("响应结果:", response)# 运行主函数
asyncio.run(main())
2)mcpo实现
先写好配置
{"mcpServers": {"xhs-mcp-server": {"isActive": true,"name": "xhs-mcp-server","type": "stdio","registryUrl": "","command": "/Users/v_chenxinhao/miniconda3/envs/mcpo/bin/python","args": ["-m","xhs_mcp_server"],"env": {"phone": "xxxx","json_path": "/Users/v_chenxinhao/Desktop/20250122/xiaohongshu" #登陆的cookie的存储位置}}}}
然后一键运行:uvx mcpo --config mcpo.json --port 8002
开始调用
import requestsdef create_note(base_url, title, content, image_paths):"""发布图文笔记到小红书:param base_url: MCP 服务地址,例如 http://localhost:8000/xhs-mcp-server:param title: 标题(不超过20字):param content: 正文描述:param image_paths: 图片路径列表"""url = f"{base_url}/create_note"payload = {"title": title,"content": content,"images": image_paths}resp = requests.post(url, json=payload)resp.raise_for_status()return resp.json()
def create_video_note(base_url, title, content, video_paths):"""发布视频笔记到小红书:param base_url: MCP 服务地址,例如 http://localhost:8000/xhs-mcp-server:param title: 标题(不超过20字):param content: 正文描述:param video_paths: 视频路径或URL列表"""url = f"{base_url}/create_video_note"payload = {"title": title,"content": content,"videos": video_paths}resp = requests.post(url, json=payload)resp.raise_for_status()return resp.json()
if __name__ == "__main__":base_url = "http://localhost:8002/xhs-mcp-server"# 图文发布note_result = create_note(base_url,title="魔塔自动发笔记支持视频啦",content="xhs-mcp 现在可以自动发视频笔记了!一键搞定!",image_paths=["/Users/v_chenxinhao/Desktop/20250324/images.png"])print("图文笔记返回:", note_result)# # 视频发布# video_result = create_video_note(# base_url,# title="魔塔mcp支持视频发布",# content="测试发布小红书视频笔记,自动化无压力~",# video_paths=["/Users/you/Desktop/demo.mp4"]# )# print("视频笔记返回:", video_result)
3)效果实现
4.cherry studio实现
1)打开cherry studio,设置—模型服务—ModelScope魔搭—获取密钥,填入密钥即可完成魔搭社区的模型服务配置
2)配置小红书server和文生图server,设置—MCP服务器—编辑MCP配置
{"mcpServers": {"xhs-mcp-server": {"isActive": true,"name": "xhs-mcp-server","type": "stdio","registryUrl": "","command": "/Users/v_chenxinhao/miniconda3/envs/mcpo/bin/python","args": ["-m","xhs_mcp_server"],"env": {"phone": "xxxxxx","json_path": "/Users/v_chenxinhao/Desktop/20250122/xiaohongshu"}}}
}
3)开始使用
相关文章:
何不乘东风?利用mcp实现小红书自动发布
1.准备环境 conda create -n mcpo python3.11 conda activate mcpo pip install mcpo pip install uvnpx puppeteer/browsers install chromedriver134.0.6998.166pip install xhs-mcp-server 2.进行登陆 env phoneYOUR_PHONE_NUMBER json_pathPATH_TO_STORE_YOUR_COOKIES u…...
DeepSeek多尺度数据:无监督与原则性诊断方案全解析
DeepSeek 多尺度数据诊断方案的重要性 在当今的 IT 领域,数据如同石油,是驱动各类智能应用发展的核心资源。随着技术的飞速发展,数据的规模和复杂性呈爆炸式增长,多尺度数据处理成为了众多领域面临的关键挑战。以计算机视觉为例,在目标检测任务中,小目标可能只有几个像素…...
【开源】Python打造高效剪贴板历史管理器:实现跨平台生产力工具
📋【开源】Python打造高效剪贴板历史管理器:实现跨平台生产力工具 🌈 个人主页:创客白泽 - CSDN博客 🔥 系列专栏:🐍《Python开源项目实战》 💡 热爱不止于代码,热情源自…...
Day 14 训练
Day 14 训练 SHAP(SHapley Additive exPlanations)1.创建解释器2.将特征贡献可视化第一部分:绘制SHAP特征重要性条形图第二部分:绘制SHAP特征重要性蜂巢图 SHAP(SHapley Additive exPlanations) 旨在解释复…...
V型球阀材质性能深度解析:专攻颗粒、料浆与高腐蚀介质的工业利器-耀圣
V型球阀材质性能深度解析:专攻颗粒、料浆与高腐蚀介质的工业利器 在工业流体控制领域,V型球阀凭借其独特的V型切口设计与多元化材质适配能力,成为含颗粒、纤维、料浆及强腐蚀性介质的“终极克星”。本文从材质性能与驱动适配性两大维度切入&…...
缓存套餐-01.Spring Cache入门案例
一.导入案例代码 application.yml server:port: 8888 spring:datasource:druid:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/spring_cache_demo?serverTimezoneAsia/Shanghai&useUnicodetrue&characterEncodingutf-8&zeroDat…...
2025年APP安全攻防指南:抵御DDoS与CC攻击的实战策略
2025年,随着AI技术与物联网设备的深度渗透,DDoS与CC攻击的复杂性和破坏性显著升级。攻击者通过伪造用户行为、劫持智能设备、利用协议漏洞等手段,对APP发起精准打击,导致服务瘫痪、用户流失甚至数据泄露。面对这一挑战,…...
力扣:多数元素
题目 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 示例 1: 输入:nums [3,2,3] 输出ÿ…...
2025年小程序DDoS与CC攻击防御全指南:构建智能安全生态
2025年,小程序已成为企业数字化转型的核心载体,但随之而来的DDoS与CC攻击也愈发复杂化、智能化。攻击者利用AI伪造用户行为、劫持物联网设备发起T级流量冲击,甚至通过漏洞窃取敏感数据。如何在高并发业务场景下保障小程序的稳定与安全&#x…...
【Python】PDF文件处理(PyPDF2、borb、fitz)
Python提供了多种方法和库用于处理PDF文件,这些工具可以帮助开发者实现诸如读取、写入、合并、拆分以及压缩等功能。以下是几个常用的Python PDF操作库及其基本用法(PyPDF2、borb、fitz)。 1. PyPDF2 PyPDF2 是一个功能强大的库࿰…...
Web 架构之前后端分离
文章目录 思维导图一、引言二、前后端分离的概念代码示例(简单的前后端分离交互)后端(使用 Python Flask 框架)前端(使用 JavaScript 和 jQuery) 三、前后端分离的优势3.1 提高开发效率3.2 代码可维护性增强…...
Pycharm安装后打开提示:此应用无法在你的电脑上运行,若要找到合适于你的电脑的版本,请咨询发布者
问题描述 今天下载安装好社区版的pycharm之后双击运行出现提示:此应用无法在你的电脑上运行,若要找到合适于你的电脑的版本,请咨询发布者。 首先我们需要查看Windows如何查看系统是ARM64还是X64架构 在 cmd 命令窗中输入 systeminfo 即可&a…...
正则表达式实战指南:原理、口诀与高频场景案例
正则表达式实战指南:原理、口诀与高频场景案例 正则表达式(Regular Expression)是程序员处理文本的瑞士军刀,被广泛应用于数据验证、日志分析、爬虫开发等领域。本文将从原理讲解、口诀速查到高频实战案例,带你系统掌…...
Spark缓存--persist方法
1. 功能本质 persist:这是一个通用的持久化方法,能够指定多种不同的存储级别。存储级别决定了数据的存储位置(如内存、磁盘)以及存储形式(如是否序列化)。 2. 存储级别指定 persist:可以通过传入…...
【LeetCode 热题 100】二叉树 系列
📁 104. 二叉树的最大深度 深度就是树的高度,即只要左右子树其中有一个不为空,就继续往下递归,知道节点为空,向上返回。 int maxDepth(TreeNode* root) {if(root nullptr)return 0;return max(maxDepth(root->lef…...
CTF之常见的文件头和文件尾
1、图片 JPEG 文件头:FF D8 FF 文件尾:FF D9TGA 未压缩的前4字节 00 00 02 00 RLE压缩的前5字节 00 00 10 00 00PNG 文件头:89 50 4E 47 0D 0A 1A 0A 文件尾:AE 42 60 82GIF 文件头:47 49 46 38 39(37) 61 文件尾&…...
软件设计师教程——第一章 计算机系统知识(上)
前言 在竞争激烈的就业市场中,证书是大学生求职的重要加分项。中级软件设计师证书专业性强、认可度高,是计算机相关专业学生考证的热门选择,既能检验专业知识,又有助于职业发展。本教程将聚焦核心重点,以点带面构建知…...
KRaft (Kafka 4.0) 集群配置指南(超简单,脱离 ZooKeeper 集群)还包含了简化测试指令的脚本!!!
docker-compose方式部署kafka集群 Kafka 4.0 引入了 KRaft 模式(Kafka Raft Metadata Mode),它使 Kafka 集群不再依赖 ZooKeeper 进行元数据管理。KRaft 模式简化了 Kafka 部署和管理,不需要额外配置 ZooKeeper 服务,…...
安全月演讲比赛活动讲话稿
同志们:在公司上下万众一心创建“无违章企业”的大形势下,由公司工会、团委举办的“安全与我”演讲比赛,经过紧张激烈的预赛,今天进行正式决赛。 从预赛的38名选手中脱颖而出的10名选手,今天将再次登台献技,…...
实时操作系统:航空电子系统的安全基石还是创新枷锁?
引言:航空电子系统的进化论 在航空电子技术的漫长发展历程中,飞行器控制系统实现从机械仪表到数字计算机的跨越,这一进步具有深远意义。现代战机以超过 2 马赫的速度突破音障,无人机群在复杂电磁环境下完成自主编队,这…...
windows 部署 Kafka3.x KRaft 模式 不依赖 ZooKeeper
1.下载 https://archive.apache.org/dist/kafka/3.9.0/kafka_2.12-3.9.0.tgz2.配置使用 KRaft 模式 2.1 修改 Kafka 的配置文件 cd D:\data\bigdata\kafka_2.12-3.9.0\config\kraft 修改 server.properties # 设置 Kafka 数据日志存储目录 log.dirsD:\\data\\bigdata\\kaf…...
SEMI E40-0200 STANDARD FOR PROCESSING MANAGEMENT(加工管理标准)-(一)
1 目的 物料(例如晶圆)加工在设备中的自动化管理与控制是实现工厂自动化的关键要素。本标准针对半导体制造环境中与设备内部物料处理相关的通信需求进行了规范。本标准规定了在加工单元接收到的指定材料所应适用的加工方法(例如Etch腔室需要Run哪支Recipe)。它阐述了物料加工的…...
Web 架构之高可用基础
文章目录 引言一、无状态服务设计(Session 托管至 Redis 集群)1. 概念与原理2. 代码示例(Python Flask 应用)3. 常见问题及解决办法 二、数据库读写分离(MySQL 主从 ProxySQL 流量分发)1. 概念与原理2. 配…...
巧用python之--模仿PLC(PLC模拟器)
工作中用到了VM(VisionMaster4.3)有时候需要和PLC打交道,但是PLC毕竟是别人的,不方便修改别人的程序,这时候需要一个灵活的PLC模拟器是多么好呀! 先说背景: PLC型号 汇川Easy521: Modbus TCP 192.168.1.10:502 在汇川Easy521中Modbus保持寄存器D寄存器 ,在modbus协议中 0-4区…...
Nginx +Nginx-http-flv-module 推流拉流
这两天为了利用云服务器实现 Nginx 进行OBS Rtmp推流,Flv拉流时发生了诸多情况,记录实现过程。 环境 OS:阿里云CentOS 7.9 64位Nginx:nginx-1.28.0Nginx-http-flv-module:nginx-http-flv-module-1.2.12 安装Nginx编…...
DRF+Vue项目线上部署:腾讯云+Centos7.6
1.服务器选购和配置 1.1.服务器选购 1.2.防火墙/安全组配置 80是HTTP的端口,443是HTTPS的端口,22是远程连接的端口,3306是mysql的端口。 1.3.远程连接软件(tabby)配置 下载:https://github.com/Eugeny/ta…...
大疆无人机(全系列,包括mini)拉流至电脑,实现直播
参考视频 【保姆级教程】大疆无人机rtmp推流直播教程_哔哩哔哩_bilibili VLC使用教程: VLC工具使用指南-CSDN博客 目录 实现效果: 电脑端 编辑 编辑 无人机端 VLC拉流 分析 实现效果: (实验机型:大疆mini4kRC-N2遥控器、大…...
Spring普通配置类 vs 自动配置类-笔记
1.简要版 Configuration和Bean,既可以用于普通配置类,也可以用于自动配置类。二者的区别和联系是什么呢? 区别: Configuration和Bean是Spring框架本身的注解,用于定义配置类和生成Bean。而自动配置通常是Spring Boo…...
解决Ceph 14.2.22 Nautilus版本监视器慢操作问题的实践指南
解决Ceph Nautilus版本监视器慢操作问题的实践指南 问题背景问题现象问题分析1. 确认监视器状态2. 检查慢操作详情3. 深入分析操作状态 问题原因解决方案立即解决方法 总结 在生产环境中执行任何操作前,请确保已备份重要数据,并在测试环境中验证解决方案…...
Go使用Gin写一个对MySQL的增删改查服务
首先用SQL创建一个包含id、name属性的users表 create table users (id int auto_incrementprimary key,name varchar(255) null );查询所有用户信息: func queryData(db *sql.DB, w http.ResponseWriter) {rows, err : db.Query("SELECT * FROM users"…...
数字孪生医疗:构建患者特异性数字孪生体路径探析
引言 数字孪生技术正逐渐成为医疗健康领域的一场革命性力量,它通过创建人体器官和系统的数字复制品,为疾病预测、诊断和个性化治疗开辟了前所未有的可能性。在心血管疾病领域,数字孪生技术的应用尤为引人注目,特别是对于扩张型心肌病(Dilated Cardiomyopathy,DCM)这一常…...
rust程序静态编译的两种方法总结
1. 概述 经过我的探索,总结了两种rust程序静态编译的方法,理论上两种方法都适用于windows、mac os和linux(mac os未验证),实测方法一性能比方法二好,现总结如下,希望能够帮到你. 2.方法一 2.1 添加配置文件 在项目的同级文件夹下新…...
threejs 添加css3d标签 vue3
如图所示,给收费站标注标签。步骤如下: 一、引入 import {CSS3DRenderer,CSS3DObject, } from "three/examples/jsm/renderers/CSS3DRenderer"; 二、 //一、申明css3渲染器 const label3DRenderer ref()//二、创建css3d渲染器--将渲染器加…...
【git】git fsmonitor
git fsmonitor 是 Git 提供的一个特性,用于提高 Git 的性能,尤其是在处理文件状态检查(git status)时。它通过文件系统监控服务(如 Windows 上的 FileSystemWatcher 或 Linux 上的 inotify)来跟踪文件系统的…...
开源照片管理系统PhotoPrism的容器化部署与远程管理配置
文章目录 前言1.关于PhotoPrism2.本地部署PhotoPrism3.PhotoPrism简单使用4. 安装内网穿透5.配置PhotoPrism公网地址6. 配置固定公网地址 前言 你是不是用手机拍照片的时候无所谓拍了多少张,但在整理的时候却要占用超多时间?别怕,今天给大家…...
macOS Python 环境配置指南
1. 检查现有 Python 环境 python3 --version # 检查 Python 3 版本 pip3 --version # 检查 pip 版本 2. 安装 pyenv(Python 版本管理工具) # 使用 Homebrew 安装 pyenvbrew install pyenv# 配置 pyenv 环境变量(添加到 ~/.zshrc&#…...
如何阅读、学习 Git 核心源代码 ?
学习 Git 核心源代码是一个深入理解版本控制系统底层原理的绝佳方式。以下是分阶段的系统性建议,结合了实践经验和学习路径设计: 一、前置知识储备 C语言进阶 重点掌握指针操作(尤其是二级指针和函数指针)结构体嵌套与内存对齐…...
学习黑客 MAC 地址深入了解
在江湖之中,每位少侠既有“门派”加身,也需持有“令牌”通行。MAC地址便是我被师门铁订在骨血里的“先天武功心法”,铸于出厂之时,终身不变,只有破阵高手才能暗度陈仓才能改写;而IP地址则是我行走江湖的“后…...
长事务:数据库中的“隐形炸弹“——金仓数据库运维避坑指南
引言:凌晨三点的告警 "张工!生产库又告警了!"凌晨三点的电话铃声总是格外刺耳。运维团队发现数据库频繁进入单用户模式,排查发现某核心表的年龄值(Age)已突破20亿大关。经过一夜奋战,…...
WTK6900C-48L:离线语音芯片重构玩具DNA,从“按键操控”到“声控陪伴”的交互跃迁
一:开发背景 随着消费升级和AI技术进步,传统玩具的机械式互动已难以满足市场需求。语音控制芯片的引入使玩具实现了从被动玩耍到智能交互的跨越式发展。通过集成高性价比的语音识别芯片,现代智能玩具不仅能精准响应儿童指令,还能实…...
一文读懂Python之requests模块(36)
一、requests模块简介 requests模块是python中原生的一款基于网络请求的模块,功能强大,简单便捷且高效 ,该模块可以模拟浏览器发送请求,主要包括指定url、发起请求、获取响应数据和持久化存储,包括 GET、POST、PUT、…...
Java 异常
Java 异常的体系结构 java.lang.Throwable ├── Error(严重错误,程序无法处理) │ ├── OutOfMemoryError │ ├── StackOverflowError │ └── ... └── Exception(程序可以处理的异常)├── Check…...
智能外呼机器人的核心优势
随着人工智能技术的快速发展,智能外呼机器人已成为企业降本增效的重要工具。其通过整合语音识别(ASR)、自然语言处理(NLP)、语音合成(TTS)等技术,不仅替代了大量重复性人工劳动&…...
n8n - 开放灵活的智能自动化工作流平台
n8n - 开放灵活的智能自动化工作流平台 在当今数字化转型的大潮中,自动化已成为众多企业提升效率、优化流程的关键手段。而在众多自动化工具中,n8n以其开放灵活且强大的功能脱颖而出,成为技术团队的可靠选择。今天,我们将深入了解n8n这个开源自动化工作流平台,探索其广泛…...
window 显示驱动开发-处理内存段(二)
KMD 不需要在其内存段中指定 GPU 可用的所有视频内存资源。 但是,KMD 必须指定 VidMm 在系统上运行的所有进程中管理的所有内存资源。 例如: 实现固定函数管道的顶点着色器微代码可以驻留在 GPU 地址空间中,但在 VidMm 管理的内存之外&#x…...
RSS 2025|斯坦福提出「统一视频行动模型UVA」:实现机器人高精度动作推理
导读 在机器人领域,让机器人像人类一样理解视觉信息并做出精准行动,一直是科研人员努力的方向。今天,我们要探讨的统一视频行动模型(Unified Video Action Model,UVA),就像给机器人装上了一个“…...
代码随想录算法训练营第60期第三十天打卡
大家好,今天我们要走进一个全新的章节,这一章叫做贪心算法,前面我们讲的是回溯算法,那究竟什么是贪心算法呢?我们一起走进今天的内容。 第一部分贪心的理论基础 其实大家看这个名字估计也会有一定了解,贪心…...
腾讯云:数字世界的“量子熔炉”与硅基文明引擎
一、算力拓扑学:重新定义空间的计算密度 腾讯云的算力网络正在突破经典物理限制,其分布式架构通过“量子化”资源调度实现超维计算: 虚拟化跃迁:基于KVM的轻量级虚拟化技术,将单台物理服务器切割为百…...
Python Cookbook-7.7 通过 shelve 修改对象
任务 你正在使用标准库模块shelve。你用shelve处理过的一些值是易变的对象(mutableobjects),而且你需要修改这些对象。 解决方案 shelve 模块提供了一种持久的字典——在强大的关系型数据库和简洁的 marshal、pickledbm 以及类似的文件格式之间,它有着…...
Baklib构建AI就绪知识管理体系
Baklib构建AI就绪知识体系 在数字化转型加速的背景下,Baklib通过其AI就绪知识管理体系,为企业提供了从数据整合到智能应用的完整解决方案。该平台以知识中台为核心架构,依托自然语言处理与机器学习技术,对分散在企业文档系统、协…...