จริงๆแล้วสิ่งที่คุณแนะนำเป็นสิ่งที่อยู่ฟีด RSS externalId
แม้ว่ามันจะถูกเปลี่ยนแปลงเล็กน้อยจากขั้นตอนที่อธิบายในคำถามของคุณมีสตริงถูกต้องในการค้นหา
ด้วยสคริปต์
สคริปต์ต่อไปนี้จะแยก URL ฟีดและจะส่งออกไปยังคอนโซล:
for (var arrScripts = document.getElementsByTagName('script'), i = 0; i < arrScripts.length; i++) {
if (arrScripts[i].textContent.indexOf('externalId') != -1) {
var channelId = arrScripts[i].textContent.match(/\"externalId\"\s*\:\s*\"(.*?)\"/)[1];
var channelRss = 'https://www.youtube.com/feeds/videos.xml?channel_id=' + channelId;
var channelTitle = document.title.match(/\(?\d*\)?\s?(.*?)\s\-\sYouTube/)[1];
console.log('The rss feed of the channel \'' + channelTitle + '\' is:\n' + channelRss);
break;
}
}
ผลลัพธ์:
The rss feed of the channel 'Sesame Street' is:
https://www.youtube.com/feeds/videos.xml?channel_id=UCoookXUzPciGrEZEXmh4Jjg
จะบันทึกที่ไหน
- คุณสามารถใช้มันเป็นสคริปต์ผู้ใช้ (เช่นGreasemonkeyหรือTampermonkeyเป็นต้น)
- คุณสามารถใช้มันเป็นBookmarklet
- คัดลอกรหัสและวางลงในคอนโซลนักพัฒนาซอฟต์แวร์
หมายเหตุ: หากคุณเลือกตัวเลือก1
หรือ2
- จะสะดวกกว่าที่จะแทนที่console.log
คำสั่งด้วยalert
เพื่อรับป๊อปอัพแทนที่จะส่งข้อความไปยังคอนโซล
ด้วยมือ
- เปิดหน้าช่อง YouTube ที่ต้องการ
- เปิด
view-source
หน้าดังกล่าว (หนึ่งในรายการต่อไปนี้):
- Ctrl+ U.
- คลิกขวา
View page source
->
- เพิ่ม
view-source:
ไปยังจุดเริ่มต้นของ URL ในแถบที่อยู่
- ค้นหาคำศัพท์
externalId
- หลังจากนั้นจะมีรหัสสุ่ม (รหัสช่อง) ในรูปแบบของ:
UCoookXUzPciGrEZEXmh4Jjg
- เพิ่มรหัสที่คุณพบว่าเป็นคำต่อท้าย
https://www.youtube.com/feeds/videos.xml?channel_id=
และตอนนี้ก็คือฟีด RSS ของคุณสำหรับช่องนั้น
rssUrl
น่าเสียดายที่ไม่ได้อยู่ในแหล่งที่มาของทุกช่องทางเช่นและview-source:https://www.youtube.com/channel/UC0YagOInbZxj10gaWwb1Nag/
view-source:https://www.youtube.com/channel/UCEBTfxJ13zkpZVbZTF3aukg