news 2026/6/15 22:11:04

CSDN 官方工具挂了,我花了 2 小时用浏览器自动化搞定了发文

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CSDN 官方工具挂了,我花了 2 小时用浏览器自动化搞定了发文

昨晚想把整理好的人形机器人行业资讯发到 CSDN,结果踩了一晚上的坑。

本来以为很简单——GitHub 上有个叫 Articli 的工具,号称一行命令就能发文章到 CSDN、掘金、思否。装上,配好 Cookie,运行:

Error: request failed 415: Unsupported Media Type

415?我 Cookie 是刚从浏览器复制的啊。

翻了一下 Articli 的 commit 记录,最后更新是 2023 年 3 月。CSDN 的 API 早就改了,这工具已经是个死项目了。

行吧,自己动手。


思路:既然 API 不行,那就模拟人

CSDN 没有公开 API,第三方工具又挂了,但浏览器里手动发文章肯定是能用的。

那就让程序来操作浏览器。

我用的是 OpenClaw 的浏览器控制功能,底层是 Chrome DevTools Protocol。简单说就是:启动一个 Chrome,然后用代码控制它点击、输入、截图。

第一个坑:服务器上没有显示器

我的程序跑在云服务器上,没有图形界面。直接启动 Chrome 会报错。

解决方案:headless 模式 + no-sandbox。

第二个坑:登录要图形验证码

本来想用手机验证码登录,结果 CSDN 弹了个点击图片中的比特币图标的验证码。

这玩意儿自动化太难搞了,换个思路——直接注入 Cookie。

用户在浏览器里登录 CSDN,F12 复制 Cookie,在 headless Chrome 里注入,刷新页面,登录状态有了。

第三个坑:编辑器是个黑盒

CSDN 的 Markdown 编辑器不是普通的 textarea,是个自定义组件。

翻了一下 DOM 结构,找到了 .editor__inner 这个元素,关键是要手动触发 input 事件,不然编辑器不知道内容变了。


最终流程

  1. 启动 headless Chrome
  2. 打开 CSDN,注入 Cookie
  3. 跳转到 editor.csdn.net/md
  4. 填标题,注入内容
  5. 点发布,确认设置,再点发布
  6. 看到绿色勾号,搞定

整个流程跑通之后,发一篇文章大概 10 秒钟。


一些感想

折腾了一晚上,其实核心代码就那么几行。大部分时间都花在等 GitHub 下载、试错各种选择器、研究 CSDN 的 DOM 结构。

但这个过程挺有意思的。以前觉得浏览器自动化是爬虫才用的东西,现在发现它其实是个万能工具——只要人能在浏览器里做的事,程序都能做。

下次再有什么网站没有 API,我第一反应就是:上 headless Chrome。


代码和完整的踩坑记录我整理成了一个可复用的模块,有需要的可以留言。

对了,这篇文章就是用这套流程发的。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 15:56:27

GP8302 I2C转4-20mA电流输出模块原理图设计,已量产

目录 1、核心芯片选型:GP8302 的技术优势 2、硬件电路设计详解 3、两端校准:实现 0.2% 高精度输出 在工业自动化与过程控制场景中,4-20mA 模拟电流信号凭借抗干扰能力强、传输距离远的特性,成为传感器、执行器与控制系统间的 “标准语言”。针对嵌入式系统中数字信号转模…

作者头像 李华
网站建设 2026/6/15 12:04:56

10个大数据架构最佳实践,让你的数据处理效率翻倍

10个大数据架构最佳实践,让你的数据处理效率翻倍 关键词:大数据架构、数据分层、流批一体、资源调度、数据治理、数据湖仓、实时计算、弹性扩展、元数据管理、效率优化 摘要:大数据时代,数据处理效率直接影响企业决策速度和竞争力。本文总结了10个经过行业验证的大数据架构…

作者头像 李华
网站建设 2026/6/15 10:44:38

MusicFree插件系统:一站式音乐聚合解决方案

MusicFree插件系统:一站式音乐聚合解决方案 【免费下载链接】MusicFreePlugins MusicFree播放插件 项目地址: https://gitcode.com/gh_mirrors/mu/MusicFreePlugins 如何解决音乐爱好者的三大核心痛点 现代音乐爱好者常常面临一个两难困境:想听的…

作者头像 李华
网站建设 2026/6/15 1:21:33

PCL2启动器完全指南:从基础配置到高级优化的开源实践

PCL2启动器完全指南:从基础配置到高级优化的开源实践 【免费下载链接】PCL2 项目地址: https://gitcode.com/gh_mirrors/pc/PCL2 PCL2启动器作为一款开源Minecraft启动工具,以其模块化设计和丰富功能深受玩家喜爱。本文将通过"问题-解决方案…

作者头像 李华
网站建设 2026/6/15 10:44:45

TTS数据守护者:让你的桌游世界永无遗失之忧

TTS数据守护者:让你的桌游世界永无遗失之忧 【免费下载链接】tts-backup Backup Tabletop Simulator saves and assets into comprehensive Zip files. 项目地址: https://gitcode.com/gh_mirrors/tt/tts-backup 想象一下,你花费数小时精心布置的…

作者头像 李华
网站建设 2026/6/15 8:37:34

yuzu模拟器深度优化:专业级性能调校与帧率瓶颈突破指南

yuzu模拟器深度优化:专业级性能调校与帧率瓶颈突破指南 【免费下载链接】yuzu 任天堂 Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/yu/yuzu 前言:模拟器卡顿解决的技术路径探索 在运行《马力欧赛车8豪华版》时遭遇画面停滞&am…

作者头像 李华