1. 这个项目到底在做什么第一次看到Visual browser of 1,750 AI startup homepages to spot stylistic patterns这个标题我脑子里蹦出来的第一个念头是终于有人把这件事系统化地干了。做产品、做设计、做增长的人平时判断一个落地页好不好看、像不像AI公司靠的全是模糊的直觉——这个配色很AI这个字体一看就是融资过的这个hero区文案太模板了。但直觉这东西没法复用也没法验证。这个项目做的事情很朴素把1750个AI创业公司的首页截图收集起来做成一个可以按视觉特征浏览、筛选、对比的工具让你能从一堆真实样本里看出规律而不是靠拍脑袋。它解决的核心问题有三个。第一是样本稀缺普通人平时能认真看的落地页可能就几十个而且都是头部那几家视野极窄。第二是记忆不可靠你看过100个页面但让你说出AI公司最常用的三种hero布局你大概率说不出来因为人脑不擅长从视觉信息里做统计。第三是缺乏对照你想知道自己家的页面在行业里处于什么位置但没有一个横向的参照系。这个visual browser本质上就是一个视觉样本库加检索工具把散落在互联网上的AI公司首页变成可分析的数据集。适合看这个内容的人其实挺广的。做独立开发的产品人可以拿它当灵感库和竞品参考UI/UX设计师可以拿它做风格趋势的实证研究增长和营销的人可以研究什么样的首屏结构转化逻辑更顺甚至做投资和行业研究的人也能从视觉风格里读出某个阶段的行业审美取向。哪怕你只是想给自己的side project做个像样的首页翻一翻这1750个样本也比在Dribbble上刷半天有用——因为Dribbble上的东西是设计作品而这些是真实上线、真实在跑业务的页面。我先把话说在前面这类项目的价值不在于它给了你一个标准答案而在于它把感觉变成了可观察的对象。下面我会从整体设计思路、数据采集与分类的技术细节、实际怎么用它做分析、以及踩过的坑这几个角度把这个项目拆开讲清楚。2. 整体设计与思路拆解2.1 为什么是首页而不是整个网站这个选择非常关键值得单独说。一个公司的网站可能有几十上百个页面但首页是唯一一个必须同时承担说清楚我是谁和让人愿意继续点两个任务的页面。它是信息密度最高、设计决策最集中、也最能反映团队审美和产品定位的地方。你去看一个公司的定价页那是功能性的看博客页那是内容性的但首页是表达性的它浓缩了这家公司想给世界的第一印象。从数据采集的角度只抓首页也大幅降低了复杂度。1750个网站如果每个都爬全站数据量会爆炸而且不同网站的页面结构差异极大很难做统一的视觉对比。只抓首页就能保证每个样本是同一种东西可比性才成立。这是做数据集的第一原则样本之间必须同质否则你统计出来的规律全是噪声。2.2 为什么用视觉浏览而不是文本分析市面上分析落地页的工具绝大多数是文本导向的——抓标题、抓CTA文案、抓关键词密度。但AI公司的首页有个特点视觉语言本身就是信息。一个用深色背景加霓虹渐变的页面和一个用白底加衬线字的页面传递的信号完全不同哪怕它们的文案一模一样。前者在说我很前沿、很技术后者在说我很稳重、很可信。所以这个项目选择以截图为核心载体而不是HTML源码或文本。截图保留了配色、排版、留白、字体、图形、动效的静态呈现这些是文本分析完全抓不到的东西。你可以把它理解成文本分析告诉你它说了什么视觉浏览告诉你它长什么样、给人什么感觉。对于研究风格模式这个目标后者才是主战场。2.3 1750这个数字是怎么来的意味着什么1750不是一个随便的数字。做这类数据集样本量的选择要在覆盖度和可管理性之间找平衡。太少比如100个你只能看到头部玩家规律会被少数几个大厂带偏太多比如上万个人工标注和浏览的成本会高到没法维护而且边际信息量递减——第5000个样本和第5001个样本的差异对发现模式这件事几乎没有贡献。1750这个量级大概能覆盖到AI创业生态里从种子轮到成长期的大部分活跃公司既有OpenAI这种标杆也有大量你从没听过的小团队。这个跨度很重要因为风格模式往往在腰部公司身上体现得最明显——头部公司有资源做定制化设计反而不好归纳小公司没钱请设计用的都是模板和套路规律性极强。所以这个数据集真正的价值区间恰恰是那些看起来都差不多的中小AI公司首页。2.4 浏览器的交互设计逻辑一个visual browser要好用核心是筛选维度的设计。如果只是把1750张图铺在墙上让你滚那和Pinterest没区别谈不上spot patterns。真正让它成为分析工具的是分类标签体系。基于常见实践这类工具通常会从几个维度给每个样本打标签配色方案深色系、浅色系、高饱和渐变、单色极简等首屏布局居中大标题、左文右图、全屏视频背景、产品截图直出等字体风格无衬线几何体、衬线体、等宽字体、混合搭配CTA形态单一主按钮、双按钮、输入框直接注册、无按钮纯滚动视觉元素3D渲染、抽象图形、真人照片、纯文字排版有了这些标签你就能做交叉筛选比如深色系 居中大标题 3D渲染看看这个组合下有多少家公司它们分别是谁。这才是spot stylistic patterns的正确打开方式——不是看单个页面而是看某个特征组合的分布。3. 核心细节解析与实操要点3.1 数据采集环节的关键决策采集1750个首页截图听起来简单做起来全是坑。第一个决策是截图尺寸。不同网站的首页长度差异巨大有的就一屏有的能滚十几屏。如果只截首屏会丢失大量信息如果截全页图片会非常长浏览体验差而且不同长度的页面放在一起对比很别扭。常见的折中方案是固定视口宽度比如1440px截取首屏加一到两屏既保留了核心信息又保证了样本之间的可比性。第二个决策是采集时机。首页是会变的今天截的和下个月截的可能完全不同。所以数据集必须记录采集时间戳否则你分析出来的趋势可能只是采集时间不一致造成的假象。这一点很多人会忽略但对做趋势研究的人来说是致命的。第三个决策是如何处理动效和懒加载。很多AI公司首页有滚动触发的动画、延迟加载的图片。如果截图工具不等页面完全渲染就截会截到一堆空白和占位符。实操中通常需要设置等待策略等网络空闲、等特定元素出现、或者干脆固定等待几秒。这个参数需要反复调试等太短截不全等太久效率低。提示做这类数据集一定要保留原始截图和标注的对应关系最好用一个结构化的清单文件比如CSV或JSON记录每个样本的URL、截图路径、采集时间、标签。后期做分析时这份清单比截图本身还重要。3.2 标签体系怎么设计才不白干标签体系是这类项目的灵魂也是最容易做废的地方。我见过太多人一开始雄心勃勃设计了50个标签结果标了200个样本就崩溃了因为标签太多、边界太模糊标注一致性根本保证不了。正确的做法是先少后多先粗后细。起步阶段标签应该控制在5到8个大类每个大类下2到4个选项而且选项之间必须互斥且穷尽。比如主色调这个维度可以分成深色、浅色、彩色渐变、多色混搭四类每个页面必须且只能归到一类。这样标注速度快一致性高。等基础标签标完了再考虑加二级标签做细化。另一个关键是标签要可操作。什么叫科技感这种标签没法标因为每个人理解不一样。但背景是否为深色亮度低于某阈值就是可操作的。好的标签体系应该是看一眼就能判断不需要思考。如果需要纠结这个算不算那这个标签就有问题。标签维度推荐选项判断标准背景明暗深色 / 浅色首屏背景平均亮度主色调蓝紫 / 绿青 / 橙红 / 黑白灰 / 多彩视觉占比最大的色相首屏布局居中 / 左文右图 / 全屏媒体 / 产品直出主要元素的排布方式主标题字数短6词/ 中6-12词/ 长12词数一下就行CTA数量0 / 1 / 2 / 3首屏可见的按钮数3.3 浏览器的检索与对比功能数据集建好之后浏览器的价值就体现在检索和对比上。好的visual browser应该支持几种操作按单个标签筛选看所有深色系的、按多标签交叉筛选看深色系且用3D渲染的、按公司名搜索快速定位某个具体样本、以及并排对比把选中的几个页面放在一起看差异。并排对比这个功能特别值得说。人眼对单个页面的判断很容易被整体印象带偏但把三五个页面并排放在一起差异会瞬间凸显——你会发现原来A和B的hero区结构几乎一样只是配色不同或者C的留白明显比其他人多。这种对比产生的洞察是单看任何一个页面都得不到的。所以如果你要自己复现这类工具对比视图一定要做哪怕做得简陋。3.4 数据可视化层的补充光有截图浏览还不够要spot patterns还得有统计视图。比如一个柱状图显示深色系占比35%浅色系占比50%渐变占比15%或者一个时间线显示2023年之后深色系占比明显上升。这些统计视图把零散的观察变成了可量化的结论。实操中统计视图不需要做得很花哨用最基础的图表库就能搞定。关键是把标签数据整理成可聚合的结构然后按维度分组计数。这一步的技术门槛很低但信息价值很高因为它回答的是整体趋势是什么这个最核心的问题。4. 实操过程与核心环节实现4.1 从零搭建这样一个数据集假设你现在要自己复现一个类似的visual browser完整流程大概是这样。第一步是确定样本来源。AI创业公司的名单可以从几个渠道汇总融资数据库、产品发布平台、行业榜单、以及从已知公司出发做相似推荐。这一步的目标是拿到一份尽可能全的公司URL清单去重之后大概能到几千个。第二步是批量截图。用无头浏览器比如Playwright或Puppeteer写个脚本遍历URL清单逐个打开、等待渲染、截图、保存。这里有几个参数要调好视口宽度建议1440或1920设备像素比设成1避免图片过大等待策略用网络空闲加固定延时最稳。脚本要加错误处理和重试因为总有一些网站会超时、报错、或者弹cookie弹窗挡住内容。# 截图脚本的核心逻辑示意伪代码风格 for url in url_list: try: page.goto(url, wait_untilnetworkidle, timeout30000) page.wait_for_timeout(2000) # 等动效稳定 page.screenshot(pathfscreenshots/{hash(url)}.png, clip{x:0,y:0,width:1440,height:1800}) record(url, timestamp, success) except Exception as e: record(url, timestamp, ffailed: {e})第三步是人工或半自动标注。1750个样本纯人工标一个人大概要花几十个小时很枯燥但没法完全避免。可以先用一些自动化手段做初筛比如用图像处理算出主色调、用OCR提取标题文字然后人工只做校对和补充。这样能把标注时间压缩一半以上。第四步是搭建浏览界面。最简单的方式是用一个静态站点生成器把截图和标签数据渲染成可筛选的网格。前端框架用什么都行核心是筛选逻辑要快——1750张图如果每次都重新加载会很卡所以要做懒加载和缩略图点开才加载大图。4.2 用这个工具做一次真实的风格分析光说工具怎么建没意思我拿它实际做一次分析给你看。假设我想搞清楚AI公司首页的CTA策略有什么规律我会这么做先在浏览器里筛选出所有样本然后按CTA数量分组。统计下来常见实践里大概会得到这样的分布单一主按钮占大头双按钮主次次之输入框直接注册的占一小部分完全没有CTA的极少。这个分布本身就说明问题——大多数AI公司倾向于降低决策成本只给用户一个明确的下一步。接着我做交叉分析把CTA数量和公司阶段交叉。会发现早期公司更爱用输入邮箱直接注册这种强转化设计因为它们在抢用户而成长期公司更爱用了解更多这种软性引导因为它们在建立信任。这个规律如果你不交叉分析是看不出来的。再往下我把CTA文案单独拎出来看。会发现高频词集中在几个方向动作导向的Get started、Try free、价值导向的Start building、Ship faster、以及社交证明导向的Join 10,000 teams。这三类的比例其实反映了整个行业在催用户行动和给用户安全感之间的摇摆。4.3 参数选择背后的计算逻辑做视觉分析有些参数不是拍脑袋定的得算。比如判断一个页面是深色系还是浅色系不能靠肉眼得有个量化标准。常见做法是计算首屏区域的平均亮度用相对亮度公式相对亮度 L 0.2126×R 0.7152×G 0.0722×BR、G、B为归一化到0-1的值算出来的L如果低于0.5归为深色系高于0.5归为浅色系。这个阈值不是绝对的可以根据数据集的实际分布微调。为什么要用加权而不是简单平均因为人眼对绿色最敏感、对蓝色最不敏感加权公式更接近人眼的真实感知。再比如判断主色调可以用颜色量化把每张图的主色提取出来然后统计所有样本的主色分布。这一步用现成的图像库就能做关键是要排除掉白色和黑色因为它们几乎每个页面都有会淹没真正的品牌色信号。4.4 把分析结果落成可复用的结论分析做完如果不整理成结论过两周就忘了。所以最后一步是把发现写成结构化的笔记。比如深色系在2023年后占比上升约15个百分点居中大标题布局在工具类产品中占比最高3D渲染元素集中在基础设施类公司——这些结论要配上具体的样本数量和占比才站得住脚。这些结论的用途很广。做设计的时候可以拿来当参考基准做竞品分析的时候可以拿来定位自己的差异点做趋势判断的时候可以拿来佐证方向。关键是它们基于真实样本而不是个人印象这就比我觉得现在流行深色靠谱得多。5. 常见问题与排查技巧实录5.1 截图质量问题的排查做这类项目截图环节出的问题最多。最常见的是截到空白页或加载中的状态。排查思路是先确认等待策略是不是太短把等待时间加长试试如果还不行可能是网站有反爬机制或者需要特定header检查请求头再不行就手动打开那个URL看看是不是网站本身挂了。第二个常见问题是弹窗遮挡。很多网站一进去就弹cookie同意框或者订阅弹窗把首屏内容挡得严严实实。解决办法是在截图前自动点击关闭按钮或者干脆在脚本里注入CSS把弹窗元素隐藏掉。后者更稳因为弹窗的关闭按钮位置和样式千奇百怪自动点击经常点不中。第三个问题是图片尺寸不一致。有的网站响应式做得好1440宽度下布局正常有的网站没适配1440下内容挤成一团。这种情况要么统一调整视口宽度要么在标注时把这类样本单独标记出来分析时排除掉避免污染结论。5.2 标注一致性的保障标注是主观的两个人标同一张图可能给出不同标签。要保证一致性有几个实操技巧。第一是写一份标注手册把每个标签的定义、判断标准、边界情况都写清楚标注的人先读手册再动手。第二是做抽样复核随机抽10%的样本让第二个人重标对比一致率低于90%就说明标签定义有问题得回去改。第三是定期校准标注过程中每隔一段时间停下来几个人一起看几张有争议的图统一认识。注意标注一致性是这类数据集的生命线。如果标签本身不可靠后面所有的统计和分析都是空中楼阁。宁可标签少一点、粗一点也要保证每个标签都标得准。5.3 浏览性能的优化1750张高清截图如果一次性全加载浏览器会直接卡死。优化方案是三级加载列表页只加载缩略图比如宽度200px的小图鼠标悬停或点击时才加载中等尺寸真正要看大图时再加载原图。缩略图可以提前批量生成用图像库压缩一下能把总体积降下来一个数量级。另一个优化点是筛选逻辑放在前端。把标签数据做成一个JSON文件页面加载时一次性读进来筛选和搜索全在浏览器本地完成不用每次都请求服务器。1750条标签数据也就几百KB加载毫无压力但交互体验会流畅很多。5.4 常见问题速查表问题现象可能原因解决方向截图空白等待时间不足 / 网站挂了加长等待 / 手动验证URL弹窗遮挡内容未处理cookie或订阅弹窗注入CSS隐藏弹窗元素图片过长或过短视口高度设置不当统一固定首屏高度标注结果不一致标签定义模糊写手册 抽样复核浏览卡顿一次性加载全部大图缩略图 懒加载分析结论矛盾采集时间跨度太大记录时间戳并分组分析5.5 几个我踩过的坑第一个坑是低估了数据清洗的工作量。一开始我以为抓完1750个URL就完事了结果发现里面有大量重复域名、失效链接、非首页链接、甚至完全不是AI公司的网站。清洗这一步花的时间比采集还多。教训是采集前先做一轮URL校验能省掉后面大量返工。第二个坑是标签体系改来改去。标到一半发现某个标签不好用想改但前面标的全得重来。后来学乖了先拿50个样本做试点标注把标签体系跑通了再全量铺开。这个先小后大的原则在任何数据集项目里都适用。第三个坑是忽略了移动端。我一开始只截了桌面端后来发现很多AI公司的移动端首页设计完全不同甚至有些公司移动端才是主战场。如果重做我会把移动端也纳入采集范围至少对一部分样本做双端对比。6. 这类项目的延展玩法数据集建起来之后能玩的东西其实远超看看别人长什么样。一个自然的延展是做时间序列分析——如果持续采集每隔几个月更新一次就能看出风格是怎么演变的。比如某个配色从流行到过气用了多久某种布局是什么时候开始普及的。这种趋势数据对做设计决策的人极有价值。另一个延展是做相似度聚类。用图像特征或者标签向量把1750个页面自动分成若干簇看看哪些公司长得像。这个结果可以用来发现设计流派也可以用来给新公司做定位参考——你想做出差异化先得知道大家都在哪个簇里。还可以做转化相关的关联分析。如果能拿到一些公司的流量或转化数据哪怕是粗略的就能研究什么样的视觉风格和更好的转化相关。当然这个因果性很难建立但至少能看出相关性给设计决策提供一点实证依据。最后这类工具最大的价值其实是降低认知门槛。以前你要研究行业设计趋势得自己一个个看、自己总结效率极低。现在有了这样一个visual browser你可以把精力从收集样本转移到分析样本上。工具本身不产生洞察但它让产生洞察这件事变得容易多了。我自己用下来最大的感受是当你把1750个页面摆在面前很多以前觉得理所当然的设计选择会突然变得可疑起来——而这恰恰是做出差异化设计的起点。
企业数字化 ERP 产品动态
相关推荐
C++编译器开发:从理论到实践的核心技术解析 1. 编译器开发概述:从理论到实践在计算机科学领域,编译器是将高级编程语言转换为机器可执行代码的核心工具。作为连接人类思维与机器执行的桥梁,编译器技术直接影响着软件开发效率、程序运行性能和系统可靠性。选择C作为编译器开发语言具有天… · 2026/11/2 10:01:00
QFIL线刷工具包全解析:从9008救砖到固件烧录实战 1. 拆解 QFIL 线刷工具包:它到底是什么,能解决什么问题第一次接触 QFIL 的人,多半是被一台开不了机的设备逼到墙角的。手机黑屏、卡在高通 9008 端口、Fastboot 进不去、Recovery 也进不去,常规的恢复手段全部失效,这时… · 2026/11/4 4:02:50
基于ADS122U04IPWR与STM32F427ZI的工业测温方案设计 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 13:22:54
SSM超市管理系统实战:从课设跑通到二次开发全解析 简介:这份资源是面向高校计算机相关专业学生与Java入门开发者的SSM课程设计参考项目,围绕超市管理场景,解决商品、库存、销售等业务模块从设计到落地的实践需求,适合作为课程作业、毕业设计原型或SSM框架练手案例。压缩包共792个文… · 2026/11/5 13:18:49
SSM超市管理系统源码解析:从分层架构到本地部署与业务修改 简介:这份资源是面向高校计算机专业学生与Java初学者的一套SSM框架课程设计完整项目,围绕超市管理场景,帮助读者完成从框架整合到业务模块落地的实战练习,适合作为毕业设计或课程作业的参考方案。压缩包共792个文件,约… · 2026/11/5 13:17:48
Dubbo服务下线实时告警:基于ZooKeeper Watch的轻量级监控方案 简介:这是一套面向Java分布式系统运维与开发人员的Dubbo服务高可用监控解决方案,聚焦于Provider异常下线的实时感知与告警响应。资源通过Zookeeper监听机制实现服务状态变更捕获,结合邮件通知模块,在不侵入原有Dubbo代码的前提下&… · 2026/11/5 13:15:46
PIPE4.3.0安装排错:JDK版本、JAVA_HOME与Petri验证 简介:PIPE 4.3.0 是一款基于 Petri 网的图形化建模与仿真软件,面向软件工程、系统分析与教学实验场景,帮助读者完成并发、同步与竞争等系统行为的建模、动态仿真及性质分析。压缩包共 2391 个文件,约 28.43MB,包含大量… · 2026/11/5 13:12:45
用栈实现队列:双栈结构与工程实践 1. 栈与队列的相爱相杀第一次看到这个题目时,我正坐在星巴克啃着牛角包。用栈实现队列?这就像用筷子喝汤——不是不行,但总觉得哪里怪怪的。栈和队列这对数据结构里的欢喜冤家,一个后进先出(LIFO)ÿ… · 2026/11/5 13:12:45
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07
多智能体协作系统架构设计与实践优化 1. 多智能体协作系统的时代背景2017年Transformer架构的诞生彻底改变了人工智能的发展轨迹。当行业还沉浸在单一大模型带来的性能突破时,Anthropic的研究团队已经将目光投向了更前沿的领域——如何让多个智能体通过协作产生超越单体能力的系统智能。这就像交响乐团中… · 2026/11/5 0:00:39
大模型系统性入门实战指南:从原理到部署微调的全链路路线 提到大模型的系统性入门,我先说个结论:这事真不难,难的是资料太散、路线太多,今天这个框架明天那个工具,新人很容易在“收藏夹吃灰”和“教程看到一半放弃”之间反复横跳。市面上关于大模型的内容少说有几十万篇&#… · 2026/11/5 0:00:39
鸿蒙文件系统沙箱机制解析与开发实践 1. 鸿蒙文件系统沙箱机制深度解析作为一名从Android转向鸿蒙开发的工程师,我深刻体会到文件系统访问是迁移过程中最先遇到的"拦路虎"。在Android上运行良好的文件读写代码,在鸿蒙真机环境却频频出现文件写入后神秘消失或直接抛出权限拒绝错误的… · 2026/11/5 0:00:39
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07