MCPcopy Create free account
hub / github.com/Useful-Scripts-Extension/useful-script / storyGetUrl

Function storyGetUrl

scripts/insta_injectDownloadBtn.js:819–842  ·  view source on GitHub ↗
(target, sectionNode)

Source from the content-addressed store, hash-verified

817 }
818
819 async function storyGetUrl(target, sectionNode) {
820 let url = null;
821 if (!disableNewUrlFetchMethod) url = await getUrlFromInfoApi(target);
822
823 if (!url) {
824 if (sectionNode.querySelector("video > source")) {
825 url = sectionNode
826 .querySelector("video > source")
827 .getAttribute("src");
828 } else if (sectionNode.querySelector('img[decoding="sync"]')) {
829 let img = sectionNode.querySelector('img[decoding="sync"]');
830 url = img.srcset.split(/ \d+w/g)[0].trim(); // extract first src from srcset attr. of img
831 if (url.length > 0) {
832 return url;
833 }
834 url = sectionNode
835 .querySelector('img[decoding="sync"]')
836 .getAttribute("src");
837 } else if (sectionNode.querySelector("video")) {
838 url = sectionNode.querySelector("video").getAttribute("src");
839 }
840 }
841 return url;
842 }
843
844 function filenameFormat(
845 template,

Callers 2

storyOnMouseInFunction · 0.85
storyOnClickedFunction · 0.85

Calls 1

getUrlFromInfoApiFunction · 0.85

Tested by

no test coverage detected