ニコニコ動画のURLからサムネイル画像を貼り付けるUserScript
/motoso/ニコニコ動画のURLからサムネイル画像を貼り付けるUserScript
code:script.js
import { insertText } from "/api/code/customize/scrapbox-insert-text/script.js"
cosense.PageMenu.addMenu({
title: "ニコニコ動画を埋め込む",
// font awesomeにniconivoがないのでビリビリで我慢。cosenseがfont awesome 6にアプデしたら切り替える
// icon: "fab fa-bilibili",
image: "https://i.gyazo.com/3de7600c073e31bf6d4d7240f2fc3f4a.png",
onClick: async () => {
if (!window.get_nicovideo_thumbnail) {
alert("UserScriptが入ってなさそうです?")
window.open("https://scrapbox.io/motoso/nicovideo-thumbnail-proxy", "blank")
return
}
const rawURL = prompt("視聴ページのURLを入力してください").trim()
if (rawURL === null) return;
// 最低限のチェック
const m = rawURL.match(/nicovideo.jp\/watch\/((sm|nm|so)\d+)/)
if (!m) {
alert("無効な形式のURLです")
return
}
try {
const res = await window.get_nicovideo_thumbnail(rawURL);
if (res.status !== 200) {
alert("URL fetch failed(!=200)")
return
}
const thumbnailUrl = res.response.thumbnailUrl;
const title = res.response.title;
insertText({ text: [${rawURL} ${thumbnailUrl}#.png]\n ${title} })
} catch (e) {
console.error(e)
alert("画像URLの取得に失敗しました")
return
}
}
})