RSSHub/lib
Liao-Ke 6e5409d7eb
feat(route): add AI 博客 (#20488)
* feat(route): add AI 博客

新增了一个归档路由处理函数,用于抓取AI博客的所有文章归档。

- 定义了一个新的路由配置对象`route`,路径为`/archives`,属于`blog`类别。
- 使用`ofetch`获取归档页面内容,并通过`cheerio`解析HTML。
- 遍历每个月份分组内的每篇文章,提取标题、链接、发布时间,并存储在列表中。
- 对列表中的每个条目,使用`cache.tryGet`缓存文章详情,若无缓存则再次使用`ofetch`获取,并解析出文章的主要内容。
- 返回处理后的结果对象,包含优化后的标题、归档页面链接以及过滤无效数据后的文章列表。

新增了一个命名空间配置对象`namespace`,用于定义AI博客的基本信息。

- 定义了一个新的命名空间配置对象`namespace`,包含站点名称、URL和语言。

* refactor(handler): 优化归档页面处理逻辑

- 使用 `toArray()` 和 `flatMap()` 方法简化了遍历每个月份分组和提取文章信息的代码逻辑。
- 修正了 `link` 属性的处理,确保当链接不存在时返回空字符串。
- 添加了 `author` 和 `description` 属性到文章对象中,以便更完整地描述文章内容。
- 精简了每个文章项的 `description` 构建,去除了不必要的 HTML 结构复制。
2025-11-16 23:48:33 +08:00
..
api
assets
errors
middleware fix(middleware): ensure referrerpolicy is set only if not already defined (#20394) 2025-10-30 04:40:05 +08:00
routes feat(route): add AI 博客 (#20488) 2025-11-16 23:48:33 +08:00
routes-deprecated feat(route): add netflix (#20453) 2025-11-09 23:00:07 +08:00
utils feat: replace rand-user-agent with header-generator (#20480) 2025-11-14 00:49:41 +08:00
views chore(deps-dev): bump eslint-plugin-unicorn from 60.0.0 to 61.0.2 (#19998) 2025-09-08 23:03:48 +08:00
app-bootstrap.tsx
app.test.ts
app.ts
config.test.ts
config.ts fix(route/picnob): use puppeteer-real-browser to pass cf check (#20478) 2025-11-14 15:32:09 +08:00
index.ts
pkg.test.ts
pkg.ts
registry.test.ts
registry.ts feat(route/telegram): Fix tglib (#18268) 2025-09-16 21:41:05 +08:00
router.js feat(route): add netflix (#20453) 2025-11-09 23:00:07 +08:00
routes.test.ts
server.ts fix(vercel): sync export default hono app (#19989) 2025-09-08 05:28:46 +08:00
setup.test.ts
types.ts feat(route/telegram): Fix tglib (#18268) 2025-09-16 21:41:05 +08:00