# 提示词 我想制作一个UE资源下载网站,功能与风格样式参照: https://www.fab.com/ https://www.fab.com/channels/unreal-engine https://www.fab.com/listings/bb7df0df-a2e7-430f-a382-7c3b121bf767 ## 主要功能 1. 使用爬虫爬取Fab.com的资源信息,使用该站点承载、显示这些信息。 2. 部分已有资源使用**Cloudreve**网盘系统进行存储,点击按钮就可以下载到本地。 3. 简单的账户登录机制, 并且提供OpenID登录方式。 ## 技术选型 我打算使用: 前端技术:TypeScript、Vue 3、Vite;Vue Router、Pinia;前端组件请使用Element Plus,使用pnpm install element-plus 进行安装;除此之外还有Lucide Icons, Tailwind CSS (可选)。 后端技术:nodejs、Fastify、Mongoose、fastify-jwt 数据库:MongoDB、MySQL。 工具函数:Axios、VueUse、pnpm ## 部署方式 1. 该网站项目使用gitea托管,使用CI/CD进行生成与部署。 2. 部署到同IP Nodejs Docker容器中。 # 资产批量下载方式 将 https://github.com/legendary-gl/legendary 下载到./docs/legendary,之后学习里面的代码。这是一个第三方开源客户端,可以用来下载fab中的资产。 1. 将相关内容写到./docs/legendary,并在skill.md添加引用。 2. 检查这个项目是否存在安全问题。 3. 尝试运行legendary来下载我的资产库,我会告诉你账号密码。 4. 先下载10个按照Clouderve的结构将下载资产库上传到clouderve。 clouderve的目录结构: - Fab - UnrealEngine - Plugins - ProInstanceToolPlugin - UE5.5 - UE5.6 - UE5.7 --- 在使用 **Claude Code** 或类似的 AI 开发工具编写爬取脚本时,绕过 Cloudflare 的核心在于**“去自动化特征”**。Cloudflare 的防护(如 5 秒盾、Turnstile)不仅检查你的 IP,还会深入分析你的浏览器指纹、TLS 握手以及行为模式。 以下是针对 2026 年技术环境,在 Claude Code 中实现避开风控的实战策略: ### 1. 使用具备“隐身”能力的浏览器框架 传统的 Selenium 或普通的 Puppeteer 极易被识别。你应该指示 Claude Code 使用以下增强库: - **Playwright + Stealth 插件**:目前最主流的选择。 - **SeleniumBase (UC Mode)**:这是目前绕过 Cloudflare 最强的工具之一,其 `undetected-chromedriver` 模式能有效隐藏自动化痕迹。 - **npx Claude Code 提示词示例**: > "请使用 Python 的 SeleniumBase 库,并开启 UC Mode(Undetected Mode)编写爬取脚本,以绕过目标的 Cloudflare 检测。" ### 2. 模拟真实浏览器的指纹 Cloudflare 会检查你的 HTTP 请求头是否与底层的 TLS 握手特征匹配(例如,如果你自称是 Chrome 但 TLS 握手特征是 Python-requests,会被秒封)。 - **TLS 指纹模拟**:使用 `curl_cffi` 库,它可以模拟真实浏览器(如 Chrome 120+)的 TLS 握手特征。 - **请求头伪造**:确保 `User-Agent`、`Accept-Language`、`Sec-Ch-Ua` 等字段与真实浏览器完全一致。 ### 3. IP 质量与地理位置 即使代码再完美,数据中心的 IP(如 AWS, Google Cloud)也是 Cloudflare 的重点监控对象。 - **使用住宅代理(Residential Proxies)**:这些 IP 看起来像普通家庭用户。 - **轮换代理**:每次请求或每隔几次操作更换一次 IP。 - **IPv6 优先**:2026 年很多防护系统对 IPv6 的限制相对宽松,且资源更丰富。 ### 4. 绕过交互挑战 (CAPTCHA/Turnstile) 当 Cloudflare 弹出验证码时,纯代码通常无法处理。 - **验证码识别服务**:在代码中集成如 CapSolver 或 2Captcha 的 API。 - **Cloudflare Workers 代理**:有时通过部署在 Cloudflare 内部的 Workers 作为跳板(利用其内部信任机制)会有奇效,但这取决于目标的具体配置。 --- ### 综合架构建议 |**维度**|**推荐技术栈**|**作用**| |---|---|---| |**底层驱动**|`SeleniumBase (UC Mode)` 或 `Playwright`|隐藏 WebDriver 特征| |**网络请求**|`curl_cffi` (Python)|解决 TLS 指纹识别问题| |**IP 资源**|动态住宅代理 (Residential Proxies)|绕过 IP 频率限制和黑名单| |**行为模拟**|`B-Splines` 曲线模拟鼠标移动|模拟真人操作轨迹| ### Claude Code 实战操作小贴士: 在 Claude Code 终端中,你可以这样引导它: 1. **第一步:环境检查**。先让它写一个简单的脚本访问 `https://nowsecure.nl`(这是一个专门测试 Cloudflare 绕过程度的网站)并截图。 2. **第二步:迭代优化**。如果截图显示被拦截,要求它:“目前的脚本被拦截了,请尝试集成 `stealth` 插件并随机化延迟时间。” 3. **第三步:添加随机性**。 Python ``` import time import random # 绝不要使用固定的 sleep(5) time.sleep(random.uniform(2.5, 7.8)) ``` **重要提醒:** 爬取数据请务必遵守目标网站的 `robots.txt` 协议及当地法律法规。过度高频的爬取不仅会被封禁,还可能面临法律风险。 # Clouderve 我部署了一个Clouderve http://10.145.96.67:5212/ 用于提供artlib具体的资产下载。请学习 API以及相关文档,之后进行构建。 ## 主要逻辑 1. 构建一个工具使用fab的账号密码登录并下载资产(暂缓开发,目前手工下载,并上传到clouderve上) 2. Artlib每过一年就对Clouderve进行扫描,之后将数据库中的项目与Clouderve项对应。确保用户可以下载到指定引擎版本的资产, 3. 用户进入资产详细页面后,如果该资产在Clouderve上存在,页面按钮就是 下载,点击后显示下拉菜单,显示可现在的版本,选择版本后进行下载;如果没有则显示访问Fab,点击后跳转到fab资产的原界面。 4. ## Clouderve目录说明 clouderve的目录结构: - Fab - UnrealEngine - Plugins - ProInstanceToolPlugin - UE5.5 - UE5.6 - UE5.7 说明 1. UnrealEngine层级目录为资产种类,除此之外还可以是Unity、MetaHuman等。 2. Plugins为资产类型与Fab资产分类有关,除此之外还可以Decal、Material、Texture。 3. ProInstanceToolPlugin层级为具体的资产名文件夹,我这边上传了ProInstanceToolPlugin作为案例。 4. UE5.5层级目录为引擎版本,目前我只打算托管UE4.27、UE5.0~最新版本。 ## API文档 - API - https://docs.cloudreve.org/zh/api/overview - [https://docs.cloudreve.org/zh/api/overview](https://cloudrevev4.apifox.cn/) --- # Artlib的意义&提效 1. 收集公司已经采购的资产包(Fab、Artstation等),方便团队以及公司其他美术同学快速找到资产包。使用RAG技术将Fab资产介绍信息整合成知识库,以进行更加精准的资产检索。 1. 解决Muse非常难用的问题。ShareStore资产不够多的问题。 2. 尽可能做到一次收集完所有资产,避免去Muse、ShareStore上来回搜索。 3. 多网站资产汇总,只需要一个网站就能检索其他所有资源站的信息。 4. Fab的资产信息具备高准确性,制作的知识库检索资产的准确性远超Muse、ShareStore。 2. 资产包资产原子化管理,做到检索单个资产的同时,只需下载所需资产,无需下载整个资产包。 1. 将下载的原子资产进行归类摆放,比如: /Plugins/ArtLib/Models/目录下,放置Foliage、Building、Prop等。 3. 给之后的AI开发游戏流程提供弹药,AI可以快速找到合适的模型与资产。 4. 维护团队封样库以及材质库信息,方便在工作时能及时察觉复用可能性,来进行复用。比如:李双在SVN上整理的各种分好类的资产库。 5. 给林海开发的插件提供资产包资源 ,让用户可以直接在UE找到合适资产并直接使用。 6. 给海量模型进行分类,为公司未来的生成模型AI提供训练数据。 7. 提供资产点赞窗口,之后学习Muse每天采购点赞最多的资产,以此吸引用户来该平台抢占Muse空间。 # 开发计划 1. Web开发 1. 修复一些交互Bug。 2. 资产点赞功能,机器人信息推送。 3. Artstation等网站数据接入。 4. 在服务端部署UE Editor,每个资产(模型、贴图……)进行视觉判断,打上合理标签。 1. AI模型部署。 2. UE Editor 群集方案实现。 5. 借到财务账号,并使用爬虫爬取Fab资产。 6. 服务器扩容,申请2个服务器用于存储数据,并且部署对象存储服务,保证数据不会嗝屁。 2. UE插件开发 1. 实现网页点击下载就能直接安装到UE目录。 2. 实现资产包资产批量修改引用,实现资产整理功能。 3. 林海Runtime Load资产插件接入Artlib服务。 4. Plugin云端加载方案探索(通过网盘系统构建虚拟目录,再通过Webdav接入UE,可能会不稳定) 3. 开发类似普罗米修斯的资产库客户端(WebApp) --- # 启动器 ## 提示词 我想制作一个类似Fab启动器,用于显示Artlib中的内容、另一个网站内容、以及连接UnrealEngine进行一些资产相关的操作(待实现) ### 主要功能 1. 使用Netease OIDC进行身份验证。 2. 显示Artlib内容,需要做好交互。启动器验证之后,会自动帮Artlib验证。 3. 显示另一个网站AssetMaker的内容,需要做好交互。启动器验证之后,会自动帮Artlib验证。 4. 连接UnrealEngine进行一些资产相关的操作(待实现) ### UI参考 相关UI参考./docs/screenshots - 左边是一个可折叠的侧边导航栏,点击左下角的折叠按钮后,可以折叠。 - 左边侧边栏方面放置3个按钮即可,Fab、角色生成 按钮、知识技能库 - 折叠效果参考 - fab_reference1.png - fab_reference1.5.png - Fab 按钮:点击后显示网站 D:\AI\Website\NeteaseAITA_Artlib,使用软连接获取对应的前端文件。 - 角色生成 按钮:点击后显示外部网站。参考 LaunchHub_1.png - 知识技能库 按钮:点击后显示外部网站 https://ta.netease.com 。参考 LaunchHub_2.png ## 技术栈 - WebApp框架:Electron、Electron-vite - 使用 npm create @quick-start/electron@latest 来建立脚手架。 - 前端技术:TypeScript、Vue 3、Vite;Vue Router、Pinia;前端组件请使用Element Plus,使用pnpm install element-plus 进行安装;除此之外还有Lucide Icons, Tailwind CSS。 - 工具函数:Axios、VueUse、pnpm