browser-web-search 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +132 -0
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.js +691 -0
  4. package/dist/index.js.map +1 -0
  5. package/package.json +45 -0
  6. package/sites/36kr/newsflash.js +76 -0
  7. package/sites/baidu/search.js +62 -0
  8. package/sites/bilibili/comments.js +74 -0
  9. package/sites/bilibili/feed.js +79 -0
  10. package/sites/bilibili/history.js +43 -0
  11. package/sites/bilibili/me.js +45 -0
  12. package/sites/bilibili/popular.js +44 -0
  13. package/sites/bilibili/ranking.js +42 -0
  14. package/sites/bilibili/search.js +46 -0
  15. package/sites/bilibili/trending.js +32 -0
  16. package/sites/bilibili/video.js +73 -0
  17. package/sites/bing/search.js +40 -0
  18. package/sites/boss/detail.js +38 -0
  19. package/sites/boss/search.js +44 -0
  20. package/sites/cnblogs/search.js +68 -0
  21. package/sites/csdn/search.js +51 -0
  22. package/sites/douban/comments.js +58 -0
  23. package/sites/douban/movie-hot.js +64 -0
  24. package/sites/douban/movie-top.js +65 -0
  25. package/sites/douban/movie.js +117 -0
  26. package/sites/douban/search.js +90 -0
  27. package/sites/douban/top250.js +73 -0
  28. package/sites/github/fork.js +38 -0
  29. package/sites/github/issue-create.js +42 -0
  30. package/sites/github/issues.js +32 -0
  31. package/sites/github/me.js +22 -0
  32. package/sites/github/pr-create.js +55 -0
  33. package/sites/github/repo.js +27 -0
  34. package/sites/google/search.js +54 -0
  35. package/sites/toutiao/hot.js +107 -0
  36. package/sites/toutiao/search.js +146 -0
  37. package/sites/xiaohongshu/comments.js +56 -0
  38. package/sites/xiaohongshu/feed.js +50 -0
  39. package/sites/xiaohongshu/me.js +49 -0
  40. package/sites/xiaohongshu/note.js +63 -0
  41. package/sites/xiaohongshu/search.js +56 -0
  42. package/sites/xiaohongshu/user_posts.js +53 -0
  43. package/sites/zhihu/hot.js +36 -0
  44. package/sites/zhihu/me.js +43 -0
  45. package/sites/zhihu/question.js +62 -0
  46. package/sites/zhihu/search.js +58 -0
package/README.md ADDED
@@ -0,0 +1,132 @@
1
+ # Browser Web Search (BWS)
2
+
3
+ **把任何网站变成命令行 API**
4
+
5
+ ## 项目特点
6
+
7
+ ### 🎯 专为 OpenClaw 设计
8
+ - **零配置**:无需 Chrome Extension、无需 Daemon,开箱即用
9
+ - **深度集成**:直接使用 OpenClaw 浏览器,与其他 Skill 共享登录态
10
+ - **轻量精简**:核心代码仅 22KB,无运行时依赖
11
+
12
+ ### 🔐 复用登录态
13
+ - **无需 API Key**:使用你在浏览器中的登录状态
14
+ - **绕过反爬**:请求来自真实浏览器,不会被封禁
15
+ - **隐私安全**:数据在本地处理,不经过第三方服务器
16
+
17
+ ### 📦 内置 Adapter
18
+ - **13 个平台,41 个命令**:开箱即用
19
+ - **可扩展**:支持添加私有 adapter 到 `~/.bws/sites/`
20
+ - **易维护**:adapter 是简单的 JS 文件,易于修改和调试
21
+
22
+ ### 🤖 AI Agent 友好
23
+ - **结构化输出**:所有命令返回 JSON,便于 AI 解析
24
+ - **jq 过滤**:内置 jq 支持,精确提取所需数据
25
+ - **错误提示**:清晰的错误信息和修复建议
26
+
27
+ ## 安装
28
+
29
+ ```bash
30
+ npm install -g browser-web-search
31
+ ```
32
+
33
+ ## 快速开始
34
+
35
+ ```bash
36
+ # 查看所有可用命令
37
+ bws site list
38
+
39
+ # 运行
40
+ bws site zhihu/hot # 知乎热榜
41
+ bws site xiaohongshu/search "旅行" # 小红书搜索
42
+ bws site github/repo owner/repo # GitHub 仓库信息
43
+ bws site bilibili/popular # B站热门视频
44
+ ```
45
+
46
+ ## 内置平台
47
+
48
+ | 分类 | 平台 | 命令数 |
49
+ |-----|-----|-------|
50
+ | **搜索** | Google, Baidu, Bing | 3 |
51
+ | **社交** | 小红书, 知乎 | 10 |
52
+ | **新闻** | 36kr, 今日头条 | 3 |
53
+ | **开发** | GitHub, CSDN, 博客园 | 8 |
54
+ | **视频** | Bilibili | 9 |
55
+ | **娱乐** | 豆瓣 | 6 |
56
+ | **招聘** | BOSS直聘 | 2 |
57
+
58
+ ## 命令
59
+
60
+ ```bash
61
+ bws site list # 列出所有 adapter
62
+ bws site search <query> # 搜索 adapter
63
+ bws site info <name> # 查看 adapter 详情
64
+ bws site <name> [args...] # 运行 adapter
65
+ ```
66
+
67
+ ## 选项
68
+
69
+ ```bash
70
+ --json # JSON 格式输出
71
+ --jq <expr> # jq 过滤表达式
72
+ ```
73
+
74
+ ## 示例
75
+
76
+ ```bash
77
+ # 获取知乎热榜
78
+ bws site zhihu/hot
79
+
80
+ # 搜索小红书并过滤标题
81
+ bws site xiaohongshu/search "美食" --jq '.notes[].title'
82
+
83
+ # 获取 B站热门视频
84
+ bws site bilibili/popular --json
85
+
86
+ # 搜索 GitHub 仓库
87
+ bws site github/repo facebook/react
88
+ ```
89
+
90
+ ## 登录态管理
91
+
92
+ adapter 运行在 OpenClaw 浏览器中。如果网站需要登录:
93
+
94
+ 1. 命令会返回 401/403 错误
95
+ 2. 在 OpenClaw 浏览器中打开网站并登录:
96
+ ```bash
97
+ openclaw browser open https://xiaohongshu.com
98
+ ```
99
+ 3. 重试命令
100
+
101
+ ## 添加私有 Adapter
102
+
103
+ 将自定义 adapter 放到 `~/.bws/sites/` 目录:
104
+
105
+ ```javascript
106
+ /* @meta
107
+ {
108
+ "name": "mysite/search",
109
+ "description": "搜索我的网站",
110
+ "domain": "mysite.com",
111
+ "args": { "query": { "required": true, "description": "搜索关键词" } },
112
+ "example": "bws site mysite/search 关键词"
113
+ }
114
+ */
115
+ async function(args) {
116
+ // 在浏览器上下文中执行
117
+ const results = document.querySelectorAll('.result');
118
+ return Array.from(results).map(el => ({
119
+ title: el.querySelector('.title').textContent,
120
+ url: el.querySelector('a').href
121
+ }));
122
+ }
123
+ ```
124
+
125
+ ## 环境要求
126
+
127
+ - Node.js >= 18
128
+ - OpenClaw 环境
129
+
130
+ ## License
131
+
132
+ MIT
@@ -0,0 +1 @@
1
+ #!/usr/bin/env node