Closed a321633 closed 7 years ago
弹幕发送者查询
功能依赖biliquery.typcn.com
,请检查此网站的可访问性
相关代码:https://github.com/zacyu/bilibili-helper/blob/master/src/bilibili_injected.js#L614
加群:548321019 我将最新测试版本放在群共享,试试看,应该可以先解决问题了
biliquery.typcn.com
网站的可访问性确实不够稳定
https://github.com/zacyu/bilibili-helper/blob/master/src/bilibili_injected.js#L617
可临时将$.get('https://biliquery.typcn.com/api/user/hash/' + sender, function(data) {
改为$.get('http://biliquery.typcn.com/api/user/hash/' + sender, function(data) {
以减小延迟或在本地解析
@a321633
弹幕发送者查询的部分会一直加载
这是因为弹幕文件中含有非标准字符,比如http://www.bilibili.com/video/av1358885/index_10.html
,对应的弹幕文件http://comment.bilibili.com/2054635.xml
在浏览器(例如chrome)中直接打开会显示:
This page contains the following errors: error on line 2232 at column 76: PCDATA invalid Char value 31 Below is a rendering of the page up to the first error.
建议的解决方案: 右键查看源代码,找到对应的行,此处为
<d p="1341.9599609375,1,25,16777215,1478103506,0,d41c3583,2625752953"> 缲り返し</d>
在原始播放器中举报该弹幕,多次后问题即可解决;
备选解决方案: 替换bilibili_injected.js#L558-L646
$.get('http://comment.bilibili.com/' + biliHelper.cid + '.xml', function(response) {
/*内容*/
}, 'xml');
为
fetch('http://comment.bilibili.com/' + biliHelper.cid + '.xml').then(res => res.text()).then(text=> {
let parser = new DOMParser();
res = res.replace(/[^\x09\x0A\x0D\x20-\uD7FF\uE000-\uFFFD\u{10000}-\u{10FFFF}]/ug, "");
let response = parser.parseFromString(text, 'text/xml');
/*内容*/
});
@myfreeer 麻烦确认一下最后一条 comment 是否还适用, 如果是的话我去修改. 原问题已在 456a22643211ab81bf362ab75b29035c5ae8a752 中解决.
@zacyu 适用,但须注意Unicode flag ("u")
的浏览器兼容性,若需兼容chrome50之前版本建议使用babel或类似工具处理一下正则表达式。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp#Browser_compatibility
先说好我用的是CHROME浏览器。 在所有新番下的原始页, 也就是http://bangumi.bilibili.com/anime/v/ 的页面,点击视频右下的哔哩哔哩助手按钮出现哔哩哔哩助手小框,然后无论点这个小框哪个部分这个小框都会缩回去,导致弹幕发送者查询功能无法使用。。。 另外就是例如http://www.bilibili.com/video/av1358885/index_10.html,弹幕发送者查询的部分会一直加载(但是原始页那边却能加载出来,然而用不了)。 http://bangumi.bilibili.com/anime/v/85276 也是一直加载无法显示,但是却可以下载弹幕下来。