Open liyewen521 opened 2 years ago
感谢您的使用!
谢谢您的说明,我可以放心地修改链接啦~我已在数据文件中更新网址,等待上传。
谢谢您的指正!
从您提供的具体例子来看,目前 Semantic Scholar 上的匹配还有不少问题。
您对 (1-3) 的猜测是正确的,全名采用开头匹配(即使用 n-th Annual ... Symposium on 匹配期刊的全名)。
(4) 的问题已经解决,原因是在代码上偷懒 ///v/// 在超出长度的名称后有 '…' 字符,我在匹配前不加甄别地直接删除结尾的字符,用“IEEE Transactions on Computer”查找,得到 ['IEEE Transactions on Computers', 'IEEE Transactions On Computer-Aided Design Of Integrated Circuits And System'],在无法确定的情况下,CCFrank 选择不显示。 我已在匹配逻辑中增加判断是否包含 '…' 的逻辑,解决 (4) 中出现的问题。
我猜测您可能是希望了解 js 部分判断 CCF 的内容,所以我这里介绍一下大致思路:
(当然如果您希望了解其他信息,欢迎再次评论告知我)
从根目录下 script.js
出发,根据我们浏览器当前打开的页面网址不同window.location.hostname.includes(site_name)
,执行不同页面的匹配逻辑site_name.run()
;
以我们现在讨论的 Semantic Scholar 为例,执行 js/semanticscholar.js,其中 appendRanks()
函数根据前端显示,定位我们需要的信息所在的网页元素 $(".cl-paper-venue")
,获取文本如“IEEE Transactions on Computers”。
传入 js/ccf.js 的 getRankInfo()
函数,Semantic Scholar 此时的匹配方式 type
选择 'abbr'
。
观察 Semantic Scholar 上会议显示缩写,期刊显示全称。
先将“IEEE Transactions on Computers”当作缩写,在 ccf.abbrFull
字典中匹配该名称,如果匹配成功,则得到该会议的信息;
而当缩写中不存在该名称 full === undefined
时,将 “IEEE Transactions on Computers” 中可能存在的 '…' 字符删除,查找名称是否与 ccf.fullUrl
字典中 key 的开头有匹配,若有,则得到该期刊的信息。
从 (1) 和 (2) 来看,(去除“Annual”及前序字符)期刊名称的开头匹配有重名的可能性,所以最好获取鼠标悬停后 tooltip 中的完整名称。
我尝试获取 tooltip 中没有成功,因为 Semantic Scholar 显示 tooltip 的做法和通常的做法不同:
鼠标悬停后,在页面中新增 div
,该 div
包含完整名称,但并不与 $(".cl-paper-venue")
绑定;
鼠标移出后,该 div
的内容被清空;
下一次鼠标悬停后,新增另一个 div
显示信息。
我还没有找到好办法来获取这些文字。
我再尝试解决下 (1-3) 的问题。
谢谢您的反馈! 做系统的同学都特别厉害,要考虑好多方面、各种因素!祝 Paper 多多!
感谢您耐心的回复,现在我对软件的执行流程有了初步了解,感谢~ 以及您的夸奖,也祝您Paper多多,哈哈~
首先,去除Annual及其前序字符应该不会导致会议名称的重复(这里强调是会议,因为期刊好像都不会用那些哪一届的写法,会议会这么写),例如(1)和(2)去掉Annual还是能区分的开,即International Symposium on Microarchitecture (MICRO)和International Symposium on Computer Architecture (ISCA)。但是直接去掉Annual会导致那些名字带Annual的会议检测错误,如NeurIPS的全称为Annual Conference on Neural Information Processing Systems。
我想了个办法,你看看行不行,如下:
首先感谢您做出如此有趣而实用的工作!
我的研究是体系结构领域,所以对#21提到的关于MICRO的问题很清楚。其中MICRO(称为大MICRO,是体系结构的顶级会议)的正确dblp网址为https://dblp.org/db/conf/micro/index.html 。然后IEEE Micro(称为小micro,是一个期刊)的dblp网址为http://dblp.uni-trier.de/db/journals/micro/ 。
我在semantic scholar上面发现有部分顶会显示不正常,如下图所示: (1)MICRO: (2)ISCA: (3)HPCA: (4)TC:
由于我对js代码并不是很了解,所以没有去直接看源码,只从现象上进行猜测。 (1)(2)(3)是同一个问题,都是带有全名和缩写,因为会议一年召开一次,所以全名里面会带上年份或者届数的字段,例如2019,53rd等。我猜测是不是因为全名采用的完全匹配,所以会导致无法正常检测,可以对全名的进行模糊匹配。 (4)的问题是只给出了全名,没有给出缩写(实际上缩写是有的,可能是这个文章没写),由于没有缩写,所以没匹配上。 综上匹配策略可以是:1. 如果同时有全名和缩写,则模糊全名+精确缩写;2. 如果只有全名或缩写,则精确匹配。