AmazonからScrapboxにスクラップするブックマークレット - 読む、書く、考える
ブックマークレットにする前にサイトの名前をちゃんと変えてから使おう!
タイトルのエンコーディングはいらないので除去してからブックマークレットにすること。(2020/08/25)
amazonタグ、kindleタグを追加するようにした。(2020/9/4)
試し読みONの時にkindle版の書影が取れない場合があるので書影のロジックを見直した (2020/9/7)
文字列連結してるところを配列→joinに変更した。
amazonの仕様変更に対応した(2024/10/7)
書影イメージの取得のID変更に対応した。
不要な空白削除のロジックを修正した。
code:script.js
javascript:(function(){
var site = 'your-site-name';
var isKindle = false;
var p = document.getElementById("productTitle");
if (!p) p = document.getElementById("productTitle");
var bylineInfo = document.getElementById('bylineInfo');
var spans = bylineInfo.getElementsByTagName('span');
for (i=0; i < spans.length; i++) {
if (span.innerText.match(/Kindle/) != null) isKindle = true;
}
var title = window.prompt('Scrap "Amazon" to your scrapbox.', p.innerHTML);
if (!title) return;
title = '『'+ title.trim() +'』';
var image = document.getElementById("landingImage");
if (!image) image = document.getElementById("detailImg");
var imageUrl = !image ? "" : image.src;
var pub = [];
var c = document.getElementsByClassName('author');
for (g=0; g < c.length ;g++){
let at = cg.innerText.replace(/,/,''); let pu = at.match(/\(.+\)/);
let ct = at.replace(/\(.+\)/,'').replace(/ /g,'');
pub.push(pu + ' + ct + '');
}
if (isKindle) tags.push('#Kindle');
var lines = '[' + imageUrl +
' ' + window.location.href +
']\n' +
pub.join(' ') +
'\n' +
tags.join('\n');
var body = encodeURIComponent(lines);
var encodedTitle = encodeURIComponent(title);
})();
Bookmarkletにしたもの
code:az2sb.js
javascript:(function(){ var site = 'tkskkd-world'; var isKindle = false; var p = document.getElementById("productTitle"); if (!p) p = document.getElementById("productTitle"); var bylineInfo = document.getElementById('bylineInfo'); var spans = bylineInfo.getElementsByTagName('span'); for (i = 0; i < spans.length; i++) { let span = spansi; if (span.innerText.match(/Kindle/) != null) isKindle = true; } var title = window.prompt('Scrap "Amazon" to your scrapbox.', p.innerHTML); if (!title) return; title = '『' + title.trim() + '』'; var image = document.getElementById("landingImage"); if (!image) image = document.getElementById("detailImg"); var imageUrl = !image ? "" : image.src; var pub = []; var c = document.getElementsByClassName(%27author%27); for (g = 0; g < c.length; g++){ let at = cg.innerText.replace(/,/,%27%27); let pu = at.match(/\(.+\)/); let ct = at.replace(/\(.+\)/,%27%27).replace(/ /g,%27%27); pub.push(pu + %27 %27 + ct + %27%27); } var tags = %27#本','#amazon'; if (isKindle) tags.push('#Kindle'); var lines = '+ imageUrl + ' ' + window.location.href + '\n' + pub.join(' ') + '\n' + tags.join('\n'); var body = encodeURIComponent(lines); var encodedTitle = encodeURIComponent(title); window.open('https://scrapbox.io/' + site + '/' + encodedTitle + '?body=' + body);})();