javdict 1.2.2 → 1.2.3
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.
- package/README.md +93 -96
- package/README_zh.md +242 -0
- package/package.json +1 -1
- package/README_en.md +0 -239
package/README.md
CHANGED
|
@@ -1,56 +1,56 @@
|
|
|
1
1
|
# AvDict 🎬
|
|
2
2
|
|
|
3
|
-
>
|
|
3
|
+
> A command-line tool to look up JAV metadata by title ID — cast, release date, studio, and more
|
|
4
4
|
|
|
5
5
|
[](https://github.com/gdjdkid/AvDict)
|
|
6
6
|
[](https://nodejs.org)
|
|
7
7
|
[](LICENSE)
|
|
8
8
|
[]()
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
Type a title ID, get back the full details — cast, release date, studio, duration, tags, and more. Multiple data sources are queried automatically with no manual switching required.
|
|
11
11
|
|
|
12
|
-

|
|
13
13
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
|
-
##
|
|
16
|
+
## Features
|
|
17
17
|
|
|
18
|
-
- 🔍
|
|
19
|
-
- 📋
|
|
20
|
-
- 💾
|
|
21
|
-
- 🖥️
|
|
22
|
-
- 🎨
|
|
23
|
-
- ⚡
|
|
18
|
+
- 🔍 **Multi-source fallback** — Queries JAVBUS → NJAV → JavLibrary → JAVDB in order; returns on first hit
|
|
19
|
+
- 📋 **Rich metadata** — Cast, release date, duration, studio, label, director, series, tags, cover image, rating
|
|
20
|
+
- 💾 **Local cache** — Results cached for 7 days to reduce repeat requests
|
|
21
|
+
- 🖥️ **Cross-platform** — Linux, Windows, and macOS supported
|
|
22
|
+
- 🎨 **Color output** — Terminal-formatted display with field-level color coding
|
|
23
|
+
- ⚡ **Fast lookups** — Direct URL construction by title ID; no login required for most sources
|
|
24
24
|
|
|
25
25
|
---
|
|
26
26
|
|
|
27
|
-
##
|
|
27
|
+
## Requirements
|
|
28
28
|
|
|
29
29
|
- Node.js >= 18.0.0
|
|
30
30
|
- npm >= 6.0.0
|
|
31
|
-
- curl
|
|
31
|
+
- curl (built into Linux/macOS; ensure it's available in your Git Bash environment on Windows)
|
|
32
32
|
|
|
33
33
|
---
|
|
34
34
|
|
|
35
|
-
##
|
|
35
|
+
## Platform Support
|
|
36
36
|
|
|
37
|
-
|
|
|
38
|
-
|
|
37
|
+
| Platform | JAVBUS | NJAV | JavLibrary | JAVDB |
|
|
38
|
+
|----------|--------|------|------------|-------|
|
|
39
39
|
| Linux / macOS | ✅ | ✅ | ✅ | ✅ |
|
|
40
40
|
| Windows | ✅ | ✅ | ✅ | ❌ |
|
|
41
41
|
|
|
42
|
-
> JAVDB
|
|
42
|
+
> JAVDB is unavailable on Windows due to Cloudflare TLS fingerprint restrictions. The other three sources work fully on Windows.
|
|
43
43
|
|
|
44
44
|
---
|
|
45
45
|
|
|
46
|
-
##
|
|
46
|
+
## Installation
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
**Option 1: Install via npm (recommended)**
|
|
49
49
|
```bash
|
|
50
50
|
npm install -g javdict
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
**Option 2: Clone from GitHub (for developers)**
|
|
54
54
|
```bash
|
|
55
55
|
git clone https://github.com/gdjdkid/AvDict.git
|
|
56
56
|
cd AvDict
|
|
@@ -58,7 +58,7 @@ npm install
|
|
|
58
58
|
npm install -g .
|
|
59
59
|
```
|
|
60
60
|
|
|
61
|
-
|
|
61
|
+
**Verify the installation:**
|
|
62
62
|
|
|
63
63
|
```bash
|
|
64
64
|
jav -v
|
|
@@ -66,9 +66,9 @@ jav -v
|
|
|
66
66
|
|
|
67
67
|
---
|
|
68
68
|
|
|
69
|
-
##
|
|
69
|
+
## Usage
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
**Look up a title ID:**
|
|
72
72
|
|
|
73
73
|
```bash
|
|
74
74
|
jav SSIS-001
|
|
@@ -76,25 +76,25 @@ jav ABF-331
|
|
|
76
76
|
jav JUR-067
|
|
77
77
|
```
|
|
78
78
|
|
|
79
|
-
|
|
79
|
+
**Output raw JSON:**
|
|
80
80
|
|
|
81
81
|
```bash
|
|
82
82
|
jav -r SSIS-001
|
|
83
83
|
```
|
|
84
84
|
|
|
85
|
-
|
|
85
|
+
**Clear local cache:**
|
|
86
86
|
|
|
87
87
|
```bash
|
|
88
88
|
jav --clear-cache
|
|
89
89
|
```
|
|
90
90
|
|
|
91
|
-
|
|
91
|
+
**Configure JAVDB Cookie (optional):**
|
|
92
92
|
|
|
93
93
|
```bash
|
|
94
94
|
jav --setup
|
|
95
95
|
```
|
|
96
96
|
|
|
97
|
-
|
|
97
|
+
**Show help:**
|
|
98
98
|
|
|
99
99
|
```bash
|
|
100
100
|
jav -h
|
|
@@ -102,56 +102,53 @@ jav -h
|
|
|
102
102
|
|
|
103
103
|
---
|
|
104
104
|
|
|
105
|
-
##
|
|
105
|
+
## CLI Options
|
|
106
106
|
|
|
107
107
|
```
|
|
108
|
-
Usage: jav [options] [
|
|
108
|
+
Usage: jav [options] [id]
|
|
109
109
|
|
|
110
110
|
Arguments:
|
|
111
|
-
|
|
111
|
+
id Title ID to look up, e.g. SSIS-001
|
|
112
112
|
|
|
113
113
|
Options:
|
|
114
|
-
-v, --version
|
|
115
|
-
-r, --raw
|
|
116
|
-
--setup
|
|
117
|
-
--clear-cache
|
|
118
|
-
-h, --help
|
|
114
|
+
-v, --version Print version number
|
|
115
|
+
-r, --raw Output raw JSON instead of formatted display
|
|
116
|
+
--setup Configure JAVDB Cookie (optional, improves coverage)
|
|
117
|
+
--clear-cache Clear local result cache
|
|
118
|
+
-h, --help Show help
|
|
119
119
|
```
|
|
120
120
|
|
|
121
121
|
---
|
|
122
122
|
|
|
123
|
-
##
|
|
123
|
+
## Configuration
|
|
124
124
|
|
|
125
|
-
### JAVDB Cookie
|
|
125
|
+
### JAVDB Cookie (optional)
|
|
126
126
|
|
|
127
|
-
|
|
127
|
+
The tool works without any configuration. Adding a JAVDB Cookie improves coverage for niche titles that only exist in JAVDB's database. This only takes effect on Linux/macOS.
|
|
128
128
|
|
|
129
|
-
|
|
129
|
+
**How to get your Cookie:**
|
|
130
130
|
|
|
131
|
-
1.
|
|
132
|
-
2.
|
|
133
|
-
3.
|
|
134
|
-
4.
|
|
135
|
-
5.
|
|
131
|
+
1. Open [https://javdb.com](https://javdb.com) in Chrome and sign in
|
|
132
|
+
2. Install the Chrome extension [Get cookies.txt LOCALLY](https://chrome.google.com/webstore/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc)
|
|
133
|
+
3. Click the extension icon on the JAVDB page and export your cookies
|
|
134
|
+
4. Find the `_jdb_session` row and copy the value in the last column
|
|
135
|
+
5. Run the setup command and paste it in:
|
|
136
136
|
|
|
137
137
|
```bash
|
|
138
138
|
jav --setup
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
-
Cookie
|
|
141
|
+
Your Cookie is saved locally at `~/.config/javinfo/config.json` and never sent anywhere.
|
|
142
142
|
|
|
143
|
-
**
|
|
143
|
+
**Cookies typically expire in about 2 weeks.** When niche titles start returning "not found", just run `jav --setup` again to refresh.
|
|
144
144
|
|
|
145
145
|
---
|
|
146
146
|
|
|
147
|
-
##
|
|
147
|
+
## Caching
|
|
148
148
|
|
|
149
|
-
|
|
149
|
+
Query results are automatically cached to `~/.config/javinfo/cache.json` with a 7-day TTL. This speeds up repeat lookups and reduces load on the source sites.
|
|
150
150
|
|
|
151
|
-
|
|
152
|
-
- 减少对数据源网站的请求压力
|
|
153
|
-
|
|
154
|
-
如需强制刷新数据,运行:
|
|
151
|
+
To force a fresh fetch:
|
|
155
152
|
|
|
156
153
|
```bash
|
|
157
154
|
jav --clear-cache
|
|
@@ -159,84 +156,84 @@ jav --clear-cache
|
|
|
159
156
|
|
|
160
157
|
---
|
|
161
158
|
|
|
162
|
-
##
|
|
159
|
+
## FAQ
|
|
163
160
|
|
|
164
|
-
**Q:
|
|
161
|
+
**Q: I get "title not found" — what's wrong?**
|
|
165
162
|
|
|
166
|
-
A:
|
|
167
|
-
1.
|
|
168
|
-
2. JAVDB Cookie
|
|
169
|
-
3.
|
|
163
|
+
A: There are three likely causes:
|
|
164
|
+
1. The title isn't indexed by any of the four sources (extremely niche content)
|
|
165
|
+
2. Your JAVDB Cookie has expired — run `jav --setup` to refresh it
|
|
166
|
+
3. Your network can't reach the source sites — check your proxy settings
|
|
170
167
|
|
|
171
|
-
**Q: Windows
|
|
168
|
+
**Q: Some titles don't show up on Windows?**
|
|
172
169
|
|
|
173
|
-
A: Windows
|
|
170
|
+
A: JAVDB is unavailable on Windows due to Cloudflare restrictions. A small number of titles that only exist in JAVDB can't be found on Windows. For full coverage, use a Linux environment (e.g. a Raspberry Pi).
|
|
174
171
|
|
|
175
|
-
**Q:
|
|
172
|
+
**Q: I get `Permission denied` when installing?**
|
|
176
173
|
|
|
177
|
-
A:
|
|
174
|
+
A: Global installation requires elevated permissions:
|
|
178
175
|
```bash
|
|
179
176
|
sudo npm install -g .
|
|
180
177
|
```
|
|
181
178
|
|
|
182
|
-
**Q: Cookie
|
|
179
|
+
**Q: How often do I need to update my Cookie?**
|
|
183
180
|
|
|
184
|
-
A:
|
|
181
|
+
A: Roughly every 2 weeks. If niche titles that previously worked start returning "not found", your Cookie has likely expired — run `jav --setup` to update it.
|
|
185
182
|
|
|
186
|
-
**Q:
|
|
183
|
+
**Q: Does it support FC2 amateur titles?**
|
|
187
184
|
|
|
188
|
-
A:
|
|
185
|
+
A: Yes. Enter the title in hyphen format, e.g. `031926-100`. The tool auto-detects FC2 format and handles the conversion internally.
|
|
189
186
|
|
|
190
187
|
---
|
|
191
188
|
|
|
192
|
-
##
|
|
189
|
+
## Data Sources
|
|
193
190
|
|
|
194
|
-
|
|
|
195
|
-
|
|
196
|
-
| JAVBUS | [javbus.com](https://www.javbus.com) |
|
|
197
|
-
| NJAV | [njav.com](https://www.njav.com) |
|
|
198
|
-
| JavLibrary | [javlibrary.com](https://www.javlibrary.com) |
|
|
199
|
-
| JAVDB | [javdb.com](https://javdb.com) |
|
|
191
|
+
| Source | Website | Notes |
|
|
192
|
+
|--------|---------|-------|
|
|
193
|
+
| JAVBUS | [javbus.com](https://www.javbus.com) | Fast, broad coverage |
|
|
194
|
+
| NJAV | [njav.com](https://www.njav.com) | High coverage, no Cookie needed |
|
|
195
|
+
| JavLibrary | [javlibrary.com](https://www.javlibrary.com) | Detailed metadata, includes ratings |
|
|
196
|
+
| JAVDB | [javdb.com](https://javdb.com) | Most comprehensive, requires Cookie |
|
|
200
197
|
|
|
201
198
|
---
|
|
202
199
|
|
|
203
|
-
##
|
|
200
|
+
## License
|
|
204
201
|
|
|
205
|
-
|
|
202
|
+
This project is open source under the [MIT License](LICENSE). You're free to use, modify, and distribute it.
|
|
206
203
|
|
|
207
204
|
---
|
|
208
205
|
|
|
209
|
-
##
|
|
206
|
+
## Contributing
|
|
210
207
|
|
|
211
|
-
|
|
208
|
+
PRs and Issues are welcome!
|
|
212
209
|
|
|
213
|
-
1. Fork
|
|
214
|
-
2.
|
|
215
|
-
3.
|
|
216
|
-
4.
|
|
217
|
-
5.
|
|
210
|
+
1. Fork this repository
|
|
211
|
+
2. Create your branch: `git checkout -b feat/your-feature`
|
|
212
|
+
3. Commit your changes: `git commit -m "feat: describe your change"`
|
|
213
|
+
4. Push the branch: `git push origin feat/your-feature`
|
|
214
|
+
5. Open a Pull Request
|
|
218
215
|
|
|
219
|
-
**Commit
|
|
220
|
-
- `feat:`
|
|
221
|
-
- `fix:`
|
|
222
|
-
- `docs:`
|
|
223
|
-
- `chore:`
|
|
216
|
+
**Commit message conventions:**
|
|
217
|
+
- `feat:` — new feature
|
|
218
|
+
- `fix:` — bug fix
|
|
219
|
+
- `docs:` — documentation update
|
|
220
|
+
- `chore:` — maintenance / housekeeping
|
|
224
221
|
|
|
225
222
|
---
|
|
226
223
|
|
|
227
|
-
##
|
|
224
|
+
## Buy Me a Coffee ☕
|
|
228
225
|
|
|
229
|
-
|
|
226
|
+
If this tool saves you time, consider supporting development:
|
|
230
227
|
|
|
231
|
-
|
|
|
232
|
-
|
|
233
|
-
| *(
|
|
228
|
+
| WeChat Pay | Alipay |
|
|
229
|
+
|------------|--------|
|
|
230
|
+
| *(QR code)* | *(QR code)* |
|
|
234
231
|
|
|
235
232
|
---
|
|
236
233
|
|
|
237
|
-
##
|
|
234
|
+
## Changelog
|
|
238
235
|
|
|
239
|
-
- **v1.2.1** —
|
|
240
|
-
- **v1.2.0** —
|
|
241
|
-
- **v1.1.x** —
|
|
242
|
-
- **v1.0.0** —
|
|
236
|
+
- **v1.2.1** — Minor fixes and stability improvements
|
|
237
|
+
- **v1.2.0** — Added NJAV as fourth data source; reordered source priority
|
|
238
|
+
- **v1.1.x** — Three-source fallback; JAVDB Cookie made optional; cross-platform compatibility fixes
|
|
239
|
+
- **v1.0.0** — Initial release
|
package/README_zh.md
ADDED
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
# AvDict 🎬
|
|
2
|
+
|
|
3
|
+
> 一个命令行查询 AV 车牌号详细信息的工具
|
|
4
|
+
|
|
5
|
+
[](https://github.com/gdjdkid/AvDict)
|
|
6
|
+
[](https://nodejs.org)
|
|
7
|
+
[](LICENSE)
|
|
8
|
+
[]()
|
|
9
|
+
|
|
10
|
+
输入一个车牌号,即可获取女优、发售日期、制作商、时长、类别等完整信息。支持多数据源自动兜底,无需手动切换。
|
|
11
|
+
|
|
12
|
+

|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 功能特点
|
|
17
|
+
|
|
18
|
+
- 🔍 **多数据源自动兜底** — 依次查询 JAVBUS → NJAV → JavLibrary → JAVDB,任意一个命中即返回
|
|
19
|
+
- 📋 **信息完整** — 女优、男优、发售日期、时长、制作商、发行商、导演、系列、类别、封面、评分
|
|
20
|
+
- 💾 **本地缓存** — 查询结果缓存 7 天,减少重复请求
|
|
21
|
+
- 🖥️ **跨平台** — 支持 Linux、Windows、macOS
|
|
22
|
+
- 🎨 **彩色输出** — 终端美化显示,字段分色,清晰易读
|
|
23
|
+
- ⚡ **查询快速** — 直接番号拼 URL,无需登录即可使用
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 系统要求
|
|
28
|
+
|
|
29
|
+
- Node.js >= 18.0.0
|
|
30
|
+
- npm >= 6.0.0
|
|
31
|
+
- curl(Linux/macOS 系统自带;Windows 请确认 Git Bash 环境下可用)
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 支持的平台
|
|
36
|
+
|
|
37
|
+
| 平台 | JAVBUS | NJAV | JavLibrary | JAVDB |
|
|
38
|
+
|------|--------|------|------------|-------|
|
|
39
|
+
| Linux / macOS | ✅ | ✅ | ✅ | ✅ |
|
|
40
|
+
| Windows | ✅ | ✅ | ✅ | ❌ |
|
|
41
|
+
|
|
42
|
+
> JAVDB 在 Windows 上因 Cloudflare TLS 指纹限制无法使用,其他三个数据源在 Windows 上完全正常。
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## 安装方法
|
|
47
|
+
|
|
48
|
+
**方式一:通过 npm 安装(推荐)**
|
|
49
|
+
```bash
|
|
50
|
+
npm install -g javdict
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**方式二:从 GitHub 克隆安装(开发者)**
|
|
54
|
+
```bash
|
|
55
|
+
git clone https://github.com/gdjdkid/AvDict.git
|
|
56
|
+
cd AvDict
|
|
57
|
+
npm install
|
|
58
|
+
npm install -g .
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**验证安装成功:**
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
jav -v
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## 使用说明
|
|
70
|
+
|
|
71
|
+
**查询车牌号:**
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
jav SSIS-001
|
|
75
|
+
jav ABF-331
|
|
76
|
+
jav JUR-067
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**输出原始 JSON 数据:**
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
jav -r SSIS-001
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**清空本地缓存:**
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
jav --clear-cache
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**配置 JAVDB Cookie(可选):**
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
jav --setup
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**显示帮助信息:**
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
jav -h
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## 命令行选项
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
Usage: jav [options] [番号]
|
|
109
|
+
|
|
110
|
+
Arguments:
|
|
111
|
+
番号 要查询的车牌号,例如: SSIS-001
|
|
112
|
+
|
|
113
|
+
Options:
|
|
114
|
+
-v, --version 显示版本号
|
|
115
|
+
-r, --raw 以原始 JSON 格式输出结果
|
|
116
|
+
--setup 配置 JAVDB Cookie(可选,提高覆盖率)
|
|
117
|
+
--clear-cache 清空本地缓存
|
|
118
|
+
-h, --help 显示帮助信息
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## 自定义设置
|
|
124
|
+
|
|
125
|
+
### JAVDB Cookie 配置(可选)
|
|
126
|
+
|
|
127
|
+
不配置也可以正常使用,配置后可提高部分冷门番号的查询覆盖率(仅 Linux/macOS 生效)。
|
|
128
|
+
|
|
129
|
+
**获取步骤:**
|
|
130
|
+
|
|
131
|
+
1. 用 Chrome 打开 [https://javdb.com](https://javdb.com) 并登录账号
|
|
132
|
+
2. 安装 Chrome 插件 [Get cookies.txt LOCALLY](https://chrome.google.com/webstore/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc)
|
|
133
|
+
3. 在 JAVDB 页面点击插件图标,导出 Cookie 文件
|
|
134
|
+
4. 找到 `_jdb_session` 那一行,复制最后一列的值
|
|
135
|
+
5. 运行以下命令并粘贴:
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
jav --setup
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Cookie 配置保存在本地 `~/.config/javinfo/config.json`,不会上传到任何地方。
|
|
142
|
+
|
|
143
|
+
**Cookie 有效期约 2 周**,过期后重新运行 `jav --setup` 更新即可。
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## 缓存说明
|
|
148
|
+
|
|
149
|
+
查询结果自动缓存到 `~/.config/javinfo/cache.json`,有效期 7 天。缓存可以:
|
|
150
|
+
|
|
151
|
+
- 加快重复查询速度
|
|
152
|
+
- 减少对数据源网站的请求压力
|
|
153
|
+
|
|
154
|
+
如需强制刷新数据,运行:
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
jav --clear-cache
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## 常见问题
|
|
163
|
+
|
|
164
|
+
**Q: 查询失败提示 `未找到番号`?**
|
|
165
|
+
|
|
166
|
+
A: 可能原因有三个:
|
|
167
|
+
1. 该番号在所有数据源均未收录(极小众内容)
|
|
168
|
+
2. JAVDB Cookie 已过期,运行 `jav --setup` 重新配置
|
|
169
|
+
3. 网络无法访问数据源,请检查代理设置
|
|
170
|
+
|
|
171
|
+
**Q: Windows 上部分番号查不到?**
|
|
172
|
+
|
|
173
|
+
A: Windows 上 JAVDB 数据源因 Cloudflare 限制无法使用,少数仅收录于 JAVDB 的番号在 Windows 上无法查询。建议在 Linux 环境(如树莓派)下使用以获得最完整的查询结果。
|
|
174
|
+
|
|
175
|
+
**Q: 提示 `Permission denied`?**
|
|
176
|
+
|
|
177
|
+
A: 全局安装时需要管理员权限:
|
|
178
|
+
```bash
|
|
179
|
+
sudo npm install -g .
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
**Q: Cookie 多久需要更新一次?**
|
|
183
|
+
|
|
184
|
+
A: 通常 2 周左右,当出现冷门番号突然查不到时,运行 `jav --setup` 更新即可。
|
|
185
|
+
|
|
186
|
+
**Q: 支持 FC2 素人番号吗?**
|
|
187
|
+
|
|
188
|
+
A: 支持,输入格式为 `031926-100`(连字符格式),工具会自动识别并转换格式查询。
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## 数据来源
|
|
193
|
+
|
|
194
|
+
| 数据源 | 网站 | 特点 |
|
|
195
|
+
|--------|------|------|
|
|
196
|
+
| JAVBUS | [javbus.com](https://www.javbus.com) | 速度快,数据丰富 |
|
|
197
|
+
| NJAV | [njav.com](https://www.njav.com) | 覆盖率高,无需 Cookie |
|
|
198
|
+
| JavLibrary | [javlibrary.com](https://www.javlibrary.com) | 数据完整,评分信息 |
|
|
199
|
+
| JAVDB | [javdb.com](https://javdb.com) | 数据最全,需要 Cookie |
|
|
200
|
+
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
## 开源协议
|
|
204
|
+
|
|
205
|
+
本项目基于 [MIT License](LICENSE) 开源,你可以自由使用、修改和分发。
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## 如何贡献代码
|
|
210
|
+
|
|
211
|
+
欢迎提交 PR 或 Issue!
|
|
212
|
+
|
|
213
|
+
1. Fork 这个仓库
|
|
214
|
+
2. 创建你的功能分支:`git checkout -b feat/your-feature`
|
|
215
|
+
3. 提交改动:`git commit -m "feat: 描述你的改动"`
|
|
216
|
+
4. 推送分支:`git push origin feat/your-feature`
|
|
217
|
+
5. 提交 Pull Request
|
|
218
|
+
|
|
219
|
+
**Commit 规范:**
|
|
220
|
+
- `feat:` 新增功能
|
|
221
|
+
- `fix:` 修复 bug
|
|
222
|
+
- `docs:` 修改文档
|
|
223
|
+
- `chore:` 杂项维护
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## 请作者喝一杯咖啡 ☕
|
|
228
|
+
|
|
229
|
+
如果这个工具对你有帮助,欢迎打赏支持:
|
|
230
|
+
|
|
231
|
+
| 微信支付 | 支付宝 |
|
|
232
|
+
|---------|--------|
|
|
233
|
+
| *(二维码)* | *(二维码)* |
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## 更新日志
|
|
238
|
+
|
|
239
|
+
- **v1.2.1** — 修复代码细节,稳定性优化
|
|
240
|
+
- **v1.2.0** — 新增 NJAV 第四数据源,调整数据源优先级
|
|
241
|
+
- **v1.1.x** — 三数据源兜底,JAVDB Cookie 改为可选配置,跨平台兼容优化
|
|
242
|
+
- **v1.0.0** — 初始版本发布
|
package/package.json
CHANGED
package/README_en.md
DELETED
|
@@ -1,239 +0,0 @@
|
|
|
1
|
-
# AvDict 🎬
|
|
2
|
-
|
|
3
|
-
> A command-line tool to look up JAV metadata by title ID — cast, release date, studio, and more
|
|
4
|
-
|
|
5
|
-
[](https://github.com/gdjdkid/AvDict)
|
|
6
|
-
[](https://nodejs.org)
|
|
7
|
-
[](LICENSE)
|
|
8
|
-
[]()
|
|
9
|
-
|
|
10
|
-
Type a title ID, get back the full details — cast, release date, studio, duration, tags, and more. Multiple data sources are queried automatically with no manual switching required.
|
|
11
|
-
|
|
12
|
-

|
|
13
|
-
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
## Features
|
|
17
|
-
|
|
18
|
-
- 🔍 **Multi-source fallback** — Queries JAVBUS → NJAV → JavLibrary → JAVDB in order; returns on first hit
|
|
19
|
-
- 📋 **Rich metadata** — Cast, release date, duration, studio, label, director, series, tags, cover image, rating
|
|
20
|
-
- 💾 **Local cache** — Results cached for 7 days to reduce repeat requests
|
|
21
|
-
- 🖥️ **Cross-platform** — Linux, Windows, and macOS supported
|
|
22
|
-
- 🎨 **Color output** — Terminal-formatted display with field-level color coding
|
|
23
|
-
- ⚡ **Fast lookups** — Direct URL construction by title ID; no login required for most sources
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## Requirements
|
|
28
|
-
|
|
29
|
-
- Node.js >= 18.0.0
|
|
30
|
-
- npm >= 6.0.0
|
|
31
|
-
- curl (built into Linux/macOS; ensure it's available in your Git Bash environment on Windows)
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## Platform Support
|
|
36
|
-
|
|
37
|
-
| Platform | JAVBUS | NJAV | JavLibrary | JAVDB |
|
|
38
|
-
|----------|--------|------|------------|-------|
|
|
39
|
-
| Linux / macOS | ✅ | ✅ | ✅ | ✅ |
|
|
40
|
-
| Windows | ✅ | ✅ | ✅ | ❌ |
|
|
41
|
-
|
|
42
|
-
> JAVDB is unavailable on Windows due to Cloudflare TLS fingerprint restrictions. The other three sources work fully on Windows.
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## Installation
|
|
47
|
-
|
|
48
|
-
**Option 1: Install via npm (recommended)**
|
|
49
|
-
```bash
|
|
50
|
-
npm install -g javdict
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
**Option 2: Clone from GitHub (for developers)**
|
|
54
|
-
```bash
|
|
55
|
-
git clone https://github.com/gdjdkid/AvDict.git
|
|
56
|
-
cd AvDict
|
|
57
|
-
npm install
|
|
58
|
-
npm install -g .
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
**Verify the installation:**
|
|
62
|
-
|
|
63
|
-
```bash
|
|
64
|
-
jav -v
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
## Usage
|
|
70
|
-
|
|
71
|
-
**Look up a title ID:**
|
|
72
|
-
|
|
73
|
-
```bash
|
|
74
|
-
jav SSIS-001
|
|
75
|
-
jav ABF-331
|
|
76
|
-
jav JUR-067
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
**Output raw JSON:**
|
|
80
|
-
|
|
81
|
-
```bash
|
|
82
|
-
jav -r SSIS-001
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
**Clear local cache:**
|
|
86
|
-
|
|
87
|
-
```bash
|
|
88
|
-
jav --clear-cache
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
**Configure JAVDB Cookie (optional):**
|
|
92
|
-
|
|
93
|
-
```bash
|
|
94
|
-
jav --setup
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
**Show help:**
|
|
98
|
-
|
|
99
|
-
```bash
|
|
100
|
-
jav -h
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
---
|
|
104
|
-
|
|
105
|
-
## CLI Options
|
|
106
|
-
|
|
107
|
-
```
|
|
108
|
-
Usage: jav [options] [id]
|
|
109
|
-
|
|
110
|
-
Arguments:
|
|
111
|
-
id Title ID to look up, e.g. SSIS-001
|
|
112
|
-
|
|
113
|
-
Options:
|
|
114
|
-
-v, --version Print version number
|
|
115
|
-
-r, --raw Output raw JSON instead of formatted display
|
|
116
|
-
--setup Configure JAVDB Cookie (optional, improves coverage)
|
|
117
|
-
--clear-cache Clear local result cache
|
|
118
|
-
-h, --help Show help
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
---
|
|
122
|
-
|
|
123
|
-
## Configuration
|
|
124
|
-
|
|
125
|
-
### JAVDB Cookie (optional)
|
|
126
|
-
|
|
127
|
-
The tool works without any configuration. Adding a JAVDB Cookie improves coverage for niche titles that only exist in JAVDB's database. This only takes effect on Linux/macOS.
|
|
128
|
-
|
|
129
|
-
**How to get your Cookie:**
|
|
130
|
-
|
|
131
|
-
1. Open [https://javdb.com](https://javdb.com) in Chrome and sign in
|
|
132
|
-
2. Install the Chrome extension [Get cookies.txt LOCALLY](https://chrome.google.com/webstore/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc)
|
|
133
|
-
3. Click the extension icon on the JAVDB page and export your cookies
|
|
134
|
-
4. Find the `_jdb_session` row and copy the value in the last column
|
|
135
|
-
5. Run the setup command and paste it in:
|
|
136
|
-
|
|
137
|
-
```bash
|
|
138
|
-
jav --setup
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
Your Cookie is saved locally at `~/.config/javinfo/config.json` and never sent anywhere.
|
|
142
|
-
|
|
143
|
-
**Cookies typically expire in about 2 weeks.** When niche titles start returning "not found", just run `jav --setup` again to refresh.
|
|
144
|
-
|
|
145
|
-
---
|
|
146
|
-
|
|
147
|
-
## Caching
|
|
148
|
-
|
|
149
|
-
Query results are automatically cached to `~/.config/javinfo/cache.json` with a 7-day TTL. This speeds up repeat lookups and reduces load on the source sites.
|
|
150
|
-
|
|
151
|
-
To force a fresh fetch:
|
|
152
|
-
|
|
153
|
-
```bash
|
|
154
|
-
jav --clear-cache
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
---
|
|
158
|
-
|
|
159
|
-
## FAQ
|
|
160
|
-
|
|
161
|
-
**Q: I get "title not found" — what's wrong?**
|
|
162
|
-
|
|
163
|
-
A: There are three likely causes:
|
|
164
|
-
1. The title isn't indexed by any of the four sources (extremely niche content)
|
|
165
|
-
2. Your JAVDB Cookie has expired — run `jav --setup` to refresh it
|
|
166
|
-
3. Your network can't reach the source sites — check your proxy settings
|
|
167
|
-
|
|
168
|
-
**Q: Some titles don't show up on Windows?**
|
|
169
|
-
|
|
170
|
-
A: JAVDB is unavailable on Windows due to Cloudflare restrictions. A small number of titles that only exist in JAVDB can't be found on Windows. For full coverage, use a Linux environment (e.g. a Raspberry Pi).
|
|
171
|
-
|
|
172
|
-
**Q: I get `Permission denied` when installing?**
|
|
173
|
-
|
|
174
|
-
A: Global installation requires elevated permissions:
|
|
175
|
-
```bash
|
|
176
|
-
sudo npm install -g .
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
**Q: How often do I need to update my Cookie?**
|
|
180
|
-
|
|
181
|
-
A: Roughly every 2 weeks. If niche titles that previously worked start returning "not found", your Cookie has likely expired — run `jav --setup` to update it.
|
|
182
|
-
|
|
183
|
-
**Q: Does it support FC2 amateur titles?**
|
|
184
|
-
|
|
185
|
-
A: Yes. Enter the title in hyphen format, e.g. `031926-100`. The tool auto-detects FC2 format and handles the conversion internally.
|
|
186
|
-
|
|
187
|
-
---
|
|
188
|
-
|
|
189
|
-
## Data Sources
|
|
190
|
-
|
|
191
|
-
| Source | Website | Notes |
|
|
192
|
-
|--------|---------|-------|
|
|
193
|
-
| JAVBUS | [javbus.com](https://www.javbus.com) | Fast, broad coverage |
|
|
194
|
-
| NJAV | [njav.com](https://www.njav.com) | High coverage, no Cookie needed |
|
|
195
|
-
| JavLibrary | [javlibrary.com](https://www.javlibrary.com) | Detailed metadata, includes ratings |
|
|
196
|
-
| JAVDB | [javdb.com](https://javdb.com) | Most comprehensive, requires Cookie |
|
|
197
|
-
|
|
198
|
-
---
|
|
199
|
-
|
|
200
|
-
## License
|
|
201
|
-
|
|
202
|
-
This project is open source under the [MIT License](LICENSE). You're free to use, modify, and distribute it.
|
|
203
|
-
|
|
204
|
-
---
|
|
205
|
-
|
|
206
|
-
## Contributing
|
|
207
|
-
|
|
208
|
-
PRs and Issues are welcome!
|
|
209
|
-
|
|
210
|
-
1. Fork this repository
|
|
211
|
-
2. Create your branch: `git checkout -b feat/your-feature`
|
|
212
|
-
3. Commit your changes: `git commit -m "feat: describe your change"`
|
|
213
|
-
4. Push the branch: `git push origin feat/your-feature`
|
|
214
|
-
5. Open a Pull Request
|
|
215
|
-
|
|
216
|
-
**Commit message conventions:**
|
|
217
|
-
- `feat:` — new feature
|
|
218
|
-
- `fix:` — bug fix
|
|
219
|
-
- `docs:` — documentation update
|
|
220
|
-
- `chore:` — maintenance / housekeeping
|
|
221
|
-
|
|
222
|
-
---
|
|
223
|
-
|
|
224
|
-
## Buy Me a Coffee ☕
|
|
225
|
-
|
|
226
|
-
If this tool saves you time, consider supporting development:
|
|
227
|
-
|
|
228
|
-
| WeChat Pay | Alipay |
|
|
229
|
-
|------------|--------|
|
|
230
|
-
| *(QR code)* | *(QR code)* |
|
|
231
|
-
|
|
232
|
-
---
|
|
233
|
-
|
|
234
|
-
## Changelog
|
|
235
|
-
|
|
236
|
-
- **v1.2.1** — Minor fixes and stability improvements
|
|
237
|
-
- **v1.2.0** — Added NJAV as fourth data source; reordered source priority
|
|
238
|
-
- **v1.1.x** — Three-source fallback; JAVDB Cookie made optional; cross-platform compatibility fixes
|
|
239
|
-
- **v1.0.0** — Initial release
|