Blog

Bởi javinfo team

AdultDataLink + javinfo: dựng lại các ý tưởng phân tích của nó cho JAV

AdultDataLink đã đóng cửa và mở mã nguồn. Chúng tôi đọc code và dựng lại các ý tưởng OHLC theo diễn viên, bảng xếp hạng và khám phá cho JAV trên dữ liệu javinfo. Cái gì khớp, cái gì không.

AdultDataLink (ADL) đã không còn. Tháng 10, tác giả của nó đăng thông báo đóng cửa trên r/SaaS và công bố mã nguồn dưới dạng repo đã lưu trữ, giấy phép MIT. Theo chính tác giả, API được host đã ngừng hoạt động từ cuối tháng 4.

Chúng tôi đọc phần mã đó và dựng lại những ý tưởng phân tích và khám phá hay nhất của nó cho JAV, trên chính dữ liệu của javinfo. ADL scrape khoảng 20 tube site và trang media phương Tây. javinfo chỉ làm JAV, nên đây là một sản phẩm khác, và nếu app của bạn cần dữ liệu từ những site đó thì bạn sẽ không tìm thấy ở đây. Repo ADL là chỗ nên bắt đầu cho việc đó.

Nếu bạn thích phần phân tích diễn viên, xu hướng và gợi ý của ADL và bạn làm việc với JAV, thì hầu hết những ý tưởng đó giờ đã có endpoint ở đây. 0.7.0 còn thêm /resolve và một nguồn javbus, những thứ không liên quan gì tới ADL. Cả hai được nói tới bên dưới.

Chúng tôi lấy gì từ ADL, và giờ nó nằm ở đâu

Chúng tôi đọc mã của ADL và cài đặt lại các ý tưởng trên dữ liệu của mình. Chúng tôi không copy code. Mọi dòng ADL trong bảng này đến từ repo công khai của nó; cột bên phải là thứ chúng tôi đã ship.

ADL (services/engine) javinfo
Nến OHLC “stock” theo diễn viên (/pornstar-calculation/fetch-pornstar-ohlc-data) GET /analytics/idols/ohlc
Top 50 tăng trưởng theo ngày và tuần (/fetch-top-50-daily-gain, /fetch-top-50-weekly-gain) GET /analytics/leaderboard, metric=momentum
Thông tin diễn viên GET /analytics/idols/stats và /idols
Xu hướng từ khóa (/keywords) Khớp gần nhất: /discover/tags và /analytics/market
Tìm kiếm cá nhân hóa (/machine-learning/search) GET /discover/for-you

Các điểm tương đồng là theo ý tưởng, không phải theo kết quả đầu ra. Nến của ADL lấy từ dữ liệu nó scrape trên các tube site. Của chúng tôi được dựng từ số bản phát hành, vì đó là thứ một danh mục JAV đo được. ADL theo dõi hiệu suất từ khóa. Của chúng tôi đếm tag và biến động thể loại trong một khoảng thời gian. ADL dựa vào IP và header của khách truy cập để cá nhân hóa; /discover/for-you dùng lịch sử tìm kiếm của chính tài khoản bạn.

Không có kế hoạch: các scraper tube site, dự án scraping, công cụ video, gán nhãn YOLO và các route Reddit.

Khám phá

Các endpoint /discover/* giúp bạn tìm phim khi không có mã.

Calendar là cái có một chỗ gợn. Các khoảng lớn trả về thành từng trang ngày trọn vẹn. Hỏi từ 2026-11-01 đến 2026-11-14 và bạn nhận được:

Lịch, hai tuần
curl "https://api.javinfo.dev/discover/calendar?from=2026-11-01&to=2026-11-14" \
-H "x-javinfo-key: YOUR_KEY"
Response (rút gọn)
{
"through": "2026-11-05",
"truncated": true
}

through là ngày trọn vẹn cuối cùng được tính vào. Hỏi lại từ 2026-11-06 và bạn nhận phần còn lại. Lặp đến khi truncated là false. Mỗi trang là một lượt gọi riêng.

Phân tích diễn viên

/analytics/* trả lời câu hỏi về một diễn viên hoặc toàn bộ thị trường.

Một lượt gọi thật, cho Yua Mikami:

Số liệu idol
curl "https://api.javinfo.dev/analytics/idols/stats?q=yua-mikami" \
-H "x-javinfo-key: YOUR_KEY"

Nó báo 1,127 phim trên 8 studio. Thể loại hàng đầu là Big Tits với 765 phim, và studio hàng đầu là S1 NO.1 STYLE với 991. works đếm mỗi phim một lần, kể cả khi nhiều nguồn cùng liệt kê.

Cũng diễn viên đó, qua /ohlc với bucket=month. Mỗi nến là số phim phát hành cộng dồn tính đến tháng đó, còn các cột bên dưới là số phim phát hành mỗi tháng. Biểu đồ hiển thị ba năm gần nhất trong 131 nến theo tháng mà lệnh gọi trả về.

Biểu đồ nến số phim phát hành cộng dồn của Yua Mikami theo tháng trong ba năm gần nhất, kết thúc ở 1.127 phim

Resolve

Metadata của một phim đến từ nhiều nguồn, và chúng không phải lúc nào cũng khớp nhau. /resolve/* nhận một mã và kiểm tra tất cả.

Với EBOD-391:

Resolve với thẻ JPG
curl "https://api.javinfo.dev/resolve?q=EBOD-391&format=jpg" \
-H "x-javinfo-key: YOUR_KEY"

Mã này có trong FANZA, javdatabase, javlibrary, javbus và missav. Phản hồi có link: "/movie?q=EBOD-391" cho bản ghi đầy đủ. Thẻ trả về ngay trong phản hồi và có kích thước khoảng 100 KB dạng JPG. Nó hiển thị điểm 8.1/10, thời lượng 119 phút, 45 magnet, và cho biết phim có thể stream.

Thẻ tiêu đề /resolve cho EBOD-391: đánh giá 8,1/10, 119 phút, phát hành 2014-08-13, 45 magnet, có thể phát trực tuyến

Provenance là lý do tồn tại của góc nhìn theo từng trường. Với cùng một mã, ngày phát hành là 2014-08-13 trên FANZA và 2014-08-09 trên javbus. Đó là một sự bất đồng thẳng thừng giữa các nguồn, và nó xảy ra khắp một danh mục cỡ này. /resolve/provenance báo cả hai giá trị và điểm tin cậy cho giá trị nó chọn, để bạn tự quyết định tin cái nào.

javbus gia nhập làm một nguồn trong bản phát hành này. Nó cấp dữ liệu cho /resolve và provenance, và /discover/random định tuyến tới nó khi bạn hỏi censored=uncensored.

Chi phí

Bạn chỉ bị tính phí cho các phản hồi 200 thành công.

Lượt gọi Giá
/discover/* $0.0004
/resolve/compare, /provenance, /streams $0.0004
/resolve kèm thẻ tiêu đề $0.0012
/resolve/batch $0.0004 mỗi 10 mã, tối đa 100
/analytics/idols/stats, /ohlc, /timeline, /market $0.0006
/analytics/idols/costars $0.0006 cho tối đa 10 kết quả, $0.0009 ở mức mặc định 15
/analytics/leaderboard $0.0006 cho tối đa 10 kết quả, $0.0012 ở mức mặc định 20

Giá cơ bản bao gồm tối đa 10 kết quả. Các endpoint danh sách tăng giá khi vượt mức đó: 20 kết quả tốn gấp đôi 10, và nhiều mức mặc định nằm trên 10 (trending trả 20, nên mặc định tốn $0.0008). Cache hit, lỗi và câu trả lời suy giảm đều miễn phí.

Tài khoản mới được tặng $0.02 tín dụng miễn phí. Giới hạn tốc độ là 10 request mỗi phút cho đến lần nạp đầu tiên, và 60 sau bất kỳ giao dịch mua nào.

Chuyển từ ADL

Ba điểm khác với những gì bạn có thể đã viết cho ADL.

Cảm ơn

Xây và vận hành ngần ấy thứ gần như một mình trong hai năm là việc khó, và công bố mã nguồn thay vì để nó mục là một việc hào phóng. Cảm ơn tác giả của ADL vì điều đó, và vì những ý tưởng mà chúng tôi có thể dựng tiếp.

Đọc tài liệu về khám phá, phân tích và resolve, rồi đăng ký tại app.javinfo.dev để lấy key.