#1 - 2025-11-22 20:05
感觉统合失调 (Tell me I'm a bad man, kick me like a stray)
Greasy Fork
Greasy Fork 镜像站
在各大引进出版社网站书籍详情页增加“复制版本”按钮,复制适用于班固米维基的版本。例如,在 https://www.tongli.com.tw/BooksDetail.aspx?BD=JC1146020 可获得:
支持的网站(示例网址):
- 东立(https://www.tongli.com.tw/BooksDetail.aspx?Bd=JC1146001)
- 长鸿(https://www.egmanga.com.tw/products/ch0735),有受限条目需要登录查看
- 台湾东贩(https://www.tohan.com.tw/product ... cid=150&id=6658),有受限条目需要登录查看
- 台湾角川(https://www.kadokawa.com.tw/products/9786264356435),不要使用系列商品页面,虽然价格会随选择的单行本变化,但 ISBN 不会变
- 青文(https://www.ching-win.com.tw/product-detail/10510315A)
- 尖端(https://www.spp.com.tw/SalePage/Index/11300169)
- 玉皇朝(https://jd-intl.com/product/%e9% ... e6%9c%9f-%e5%ae%8c/)
由于大陆出版商多没有信息详尽的官网,且第三方可能有更详尽的信息,同样支持下面的第三方网站,使用时请注意信息是否准确,且留意商品介绍图片里往往有更完整的信息:
- 豆瓣(https://book.douban.com/subject/36799715/)
- 当当(https://product.dangdang.com/29886912.html)
- 京东(https://item.jd.com/14397392.html)
- 天猫(https://detail.tmall.com/item.htm?abbucket=7&id=952735079569)
- PDC(https://pdc.capub.cn/search.html ... from=1&type=cip)
- 金石堂(https://www.kingstone.com.tw/basic/2019461217771)
- 博客來(https://www.books.com.tw/products/0010994716?sloc=main)
- 新絲路(https://www.silkbook.com/book_detail.asp?goods_ser=kk0603915)
- anobii(https://www.anobii.com/zh-Hant/b ... /015e6394ff2f568487)
- 三民(https://www.sanmin.com.tw/product/index/003693167)
可以参照代码中的 config 自行添加网站,方便的话也可以让我加入发布的版本里。
提供了接口 getBgmVersion(url) 便于科技维基人写爬虫,无法处理需登录的受限条目。例如,从 https://www.ching-win.com.tw/sea ... 2%E4%B9%8B%E8%8A%B1 获取青文版青之花的全套信息,可以使用以下代码:
从 https://www.tongli.com.tw/BooksDetail.aspx?Bd=JC1199008 获取东立版九龙大众浪漫的全套信息:
从 https://jd-intl.com/?s=%E9%9D%92 ... p;post_type=product 获得玉皇朝版青之芦苇的全套信息(数量较大请 AI 写一个防 ban):
从班固米获取倒序单行本 ID 列表:
Greasy Fork 镜像站
在各大引进出版社网站书籍详情页增加“复制版本”按钮,复制适用于班固米维基的版本。例如,在 https://www.tongli.com.tw/BooksDetail.aspx?BD=JC1146020 可获得:
|版本:东立版={
[版本名|鏈鋸人 第20集]
[别名|]
[语言|繁体中文]
[价格|NT$110]
[出品方|]
[出版社|東立出版社]
[发售日|2025-09-25]
[页数|]
[ISBN|9786260249410]
[译者|吳勵誠]
}支持的网站(示例网址):
- 东立(https://www.tongli.com.tw/BooksDetail.aspx?Bd=JC1146001)
- 长鸿(https://www.egmanga.com.tw/products/ch0735),有受限条目需要登录查看
- 台湾东贩(https://www.tohan.com.tw/product ... cid=150&id=6658),有受限条目需要登录查看
- 台湾角川(https://www.kadokawa.com.tw/products/9786264356435),不要使用系列商品页面,虽然价格会随选择的单行本变化,但 ISBN 不会变
- 青文(https://www.ching-win.com.tw/product-detail/10510315A)
- 尖端(https://www.spp.com.tw/SalePage/Index/11300169)
- 玉皇朝(https://jd-intl.com/product/%e9% ... e6%9c%9f-%e5%ae%8c/)
由于大陆出版商多没有信息详尽的官网,且第三方可能有更详尽的信息,同样支持下面的第三方网站,使用时请注意信息是否准确,且留意商品介绍图片里往往有更完整的信息:
- 豆瓣(https://book.douban.com/subject/36799715/)
- 当当(https://product.dangdang.com/29886912.html)
- 京东(https://item.jd.com/14397392.html)
- 天猫(https://detail.tmall.com/item.htm?abbucket=7&id=952735079569)
- PDC(https://pdc.capub.cn/search.html ... from=1&type=cip)
- 金石堂(https://www.kingstone.com.tw/basic/2019461217771)
- 博客來(https://www.books.com.tw/products/0010994716?sloc=main)
- 新絲路(https://www.silkbook.com/book_detail.asp?goods_ser=kk0603915)
- anobii(https://www.anobii.com/zh-Hant/b ... /015e6394ff2f568487)
- 三民(https://www.sanmin.com.tw/product/index/003693167)
可以参照代码中的 config 自行添加网站,方便的话也可以让我加入发布的版本里。
提供了接口 getBgmVersion(url) 便于科技维基人写爬虫,无法处理需登录的受限条目。例如,从 https://www.ching-win.com.tw/sea ... 2%E4%B9%8B%E8%8A%B1 获取青文版青之花的全套信息,可以使用以下代码:
Promise.all([...document.querySelectorAll('.productBox a.title')].map(a => getBgmVersion(a.href))).then(console.log);从 https://www.tongli.com.tw/BooksDetail.aspx?Bd=JC1199008 获取东立版九龙大众浪漫的全套信息:
Promise.all([...document.querySelectorAll('.owl-item a')].map(a => getBgmVersion(a.href))).then(console.log);从 https://jd-intl.com/?s=%E9%9D%92 ... p;post_type=product 获得玉皇朝版青之芦苇的全套信息(数量较大请 AI 写一个防 ban):
// 核心:分批执行,限制并发数
const batchRequest = async (urls, concurrency = 3) => {
const results = [];
// 分批循环:每次取 concurrency 个 URL
for (let i = 0; i < urls.length; i += concurrency) {
const batchUrls = urls.slice(i, i + concurrency);
// 一批内并行请求,等待全部完成再下一批
const batchResults = await Promise.allSettled(
batchUrls.map(url => getBgmVersion(url).catch(err => ({ error: err.message, url })))
);
results.push(...batchResults);
// 可选:每批请求后延迟 1-2 秒,进一步降低反爬风险
await new Promise(resolve => setTimeout(resolve, 1000));
}
// 过滤成功结果并返回(顺序与原始 URL 一致)
return results.filter(r => r.status === 'fulfilled').map(r => r.value);
};
// 执行逻辑(一行提取 URL + 分批请求)
batchRequest([...document.querySelectorAll('.woocommerce-LoopProduct-link')].map(a => a.href.trim()).filter(Boolean))
.then(successResults => console.log('成功结果:', successResults))
.catch(err => console.error('批量请求失败:', err));
从班固米获取倒序单行本 ID 列表:
copy([...document.querySelector('.browserCoverMedium:nth-of-type(1)').querySelectorAll('li a')].map(a => a.href.split('/').pop()).toReversed().join('\n'))
顺序
試用了一下非常好