2023/06/11

J-STAGEから文献情報を取得するブックマークレットを作ってみた


こんにちは,修士1年の片山です.今回は,J-STAGEから文献情報を自動で引いてくるブックマークレットを作成してみたので,それを公開したいと思います.

市川研究室では,1週間あたり学部生は2本,修士生以上は3本の文献調査(文献を読み,内容を理解し,Scrapboxにアウトプットすること)によってインプットの一部を担保しています.このとき,Scrapbox上に文献情報をまとめることも必要なのですが,J-STAGEから文献を引いてくるときには,タイトルをコピペして,著者をコピペして,出版日をコピペして,…という作業があります.

んー…効率化したい!!

そこでJavaScriptを利用してブックマークレットを作成し,これによってボタンひとつでScrapbox上に文献情報をまとめることを目指しました.コードは次の通りです(参考:Scrapboxの日記にWebページをブックマークするためのブックマークレット|https://note103.hateblo.jp/entry/2018/11/23/080326).

javascript:(function(){
var mypage = ‘mypagename’;
var title = window.prompt(‘Bookmark to Scrapbox’, document.title);
if (title == null) return;
var location = window.location.href;
var author = document.getElementsByClassName(“customTooltip”)[0].innerHTML.replace(”, ‘[‘).replace(”, ‘]’);
var journal = document.getElementsByClassName(“journal-name”)[0].innerHTML;
var para = document.getElementsByClassName(“global-para”)[1].innerHTML.replace(/\n/g, ”).replace(/\t/g, ”).replace(/ /g, ”);
var year = para.split(/年/)[0]; para = para.substr(para.indexOf(‘年’) + 1);
var info = author+’. ‘+title+’. [‘+journal+’]. ‘+year+’. ‘;
if (para.match(/巻/)) {var vol = para.split(/巻/)[0]; info += ‘vol.’+vol+’, ‘; para = para.substr(para.indexOf(‘巻’) + 1)};
if (para.match(/号/)) {var no = para.split(/号/)[0]; info += ‘no.’+no+’, ‘; para = para.substr(para.indexOf(‘号’) + 1)};
if (para.match(/p./)) {var page = para.substr(para.indexOf(‘p’)); info += page+’.’};
var body = ‘[【文献調査】’+title+’]\n’+info+’\n’+location+’\n’;
var encodedBody = encodeURIComponent(body);
window.open(‘https://scrapbox.io/’+mypage+’?body=’+encodedBody);
})();

利用方法は簡単で,まず’mypagename’にScrapboxのプロジェクト名とページ名をいれます(例:’myproject/paperinfo’).次にブックマークにそのコードを登録します.

そしてJ-STAGEの文献ページからブックマークレットを作動させると,指定したページに文献情報が出力されます.

以上,文献調査が効率化されました!!嬉しいです.

このように市川研究室では,課題解決のためなら方法を問わない方針のもと,技術の吸収も積極的に行っています.いつどこで活用できるかわからないですが,いざとなったときに即座に実装できる面々がいるのが強みです.

ここまで読んでいただきありがとうございました!ぜひ他の記事も見ていってください!!

著者プロフィール

片山 陽和太
2023年度 芝浦工業大学理工学研究科修士課程システム理工学専攻 修士1年
1999年9月生まれ青森県弘前市出身.紆余曲折を経て社会システム科学を学ぶことになり毎日がエブリデイ.

関連記事はこちら