2つのブコメを比較
by
Lhankor_Mhy
2022-11-18 [2022/11/18 18:09:55]
比較したいブコメページを入力→コメントがユーザーごとに並ぶ
-
/*
* @title 2つのブコメを比較
* @description 比較したいブコメページを入力→コメントがユーザーごとに並ぶ
* @include https://b.hatena.ne.jp/entry/*
* @license CC0
* @javascript_url
*/
(async () => {
document.documentElement.scrollTop = document.documentElement.scrollHeight
const regexpEscape = s => s.replace(/[\\^$.*+?()[\]{}|]/g, '\\$&')
const regexp = new RegExp(regexpEscape("https://b.hatena.ne.jp/entry/") + "(s/)*(.+)")
const BtoURL = s => s.replace(regexp, (_, p1, p2) => (p1 ? "https://" : "http://") + p2)
const {bookmarks,eid} = (await (await fetch('https://b.hatena.ne.jp/entry/jsonlite/?url=' + encodeURIComponent(BtoURL(prompt('比較ブクマURL', ''))))).json())
bookmarks.forEach(bookmark => {
const targetElement = document.querySelector(`.is-active.bookmarks-sort-panel [data-user-name="${bookmark.user}"] .entry-comment-text`)
targetElement?.insertAdjacentHTML?.('beforeend', `<a href="/entry/${eid}/comment/${bookmark.user}" class="entry-comment-text js-bookmark-comment" target="_blank" style="display:block;background-color:wheat">${bookmark.comment}</a>`)
})
})()
-
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。