기타
[JavaScript] 유튜브 좋아요 표시한 동영상 전부 삭제하기
young
2022. 2. 20. 02:31
반응형
친구가 유튜브에서 좋아요를 표시한 동영상들을 모두 삭제하고 싶다고 해서 알아보게 되었다. 희한하게 유튜브는 사용자가 좋아요를 클릭한 동영상을 한 번에 삭제할 수 있는 기능을 넣어두지 않았다(2022.02 기준). 대신 JavaScript를 이용해서 요소를 하나씩 찾아 클릭시켜 삭제하는 방법이 있었다. 단, 한 번에 100개까지만 삭제가 된다.
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function deleteLikedVideos() {
var items = document.querySelectorAll("#primary ytd-playlist-video-renderer yt-icon-button.dropdown-trigger > button[aria-label]")
var out
for (var i = 0; i < items.length; i++) {
items[i].click()
out = setTimeout(function () {
if (document.querySelector("tp-yt-paper-listbox.style-scope.ytd-menu-popup-renderer").lastElementChild) {
document.querySelector("tp-yt-paper-listbox.style-scope.ytd-menu-popup-renderer").lastElementChild.click()
}
}, 100)
await sleep(500)
clearTimeout(out)
}
}
deleteLikedVideos()
반응형