Код страницы

Поддержка
  • Действие Браузер-код страницы не на всех сайтах возвращает код. Посоветуйте, пожалуйста, более надёжный способ.

  • @Lex-0

    view-source:https://community.bablosoft.com/topic/31321/код-страницы
    
  • @Lex-0
    Вызвать JS-код: в Браузере

    [[PAGE_HTML]] = document.documentElement.outerHTML;
    

    Есть еще более сложный навайбкоденый варинт с загрузкой html в iframe и последующей конкатенацией:

    (async () => {
        function getAllFrames(win) {
            const frames = [];
            function recurse(w) {
                frames.push(w);
                for (let i = 0; i < w.frames.length; i++) {
                    try {
                        recurse(w.frames[i]);
                    } catch (e) {
                        console.warn("CORS iframe недоступен:", e);
                    }
                }
            }
            recurse(win);
            return frames;
        }
    
        const frameHtmls = [];
        const frames = getAllFrames(window);
    
        for (const frame of frames) {
            try {
                const doc = frame.document;
                const html = `<!-- iframe: ${frame.location.href} -->\n` + doc.documentElement.outerHTML;
                frameHtmls.push(html);
            } catch (e) {
                frameHtmls.push(`<!-- iframe с origin ${frame.location?.href || 'неизвестен'} недоступен по причине CORS -->`);
            }
        }
    
        // В этой переменной будет весь HTML как строка
        [[PAGE_HTML]] = frameHtmls.join("\n\n<!-- --- END FRAME --- -->\n\n");
    })();