Javascript para conversor de HTML?

4

Tome por exemplo este trecho de código em uma página da web.

<html><body>
<script language="javascript">
document.write("The cat");
document.write(" sat on the mat");
</script>
</body></html>

Se eu fosse recuperar essa página da web por meio de CURL ou WGET, receberia esse texto porque o Javascript não foi processado.

Mas eu gostaria de recuperar esta página, então eu obtenho os resultados da saída Javascript. Então eu iria ficar só ..

The cat sat on the mat

Existe algum sandbox / emulador / préprocessador do Linux Javascript ou algo assim que me permitiria processar o texto em html. Eu entendo que o Javascript é complexo e não espere 100% de conversão. Mas mesmo para obter alguma conversão básica seria útil.

Eu sei que é possível, como tenho certeza, que o Google faz isso quando indexa páginas da web para obter os melhores resultados para as páginas da web que eles indexam.

    
por Meer Borg 23.07.2013 / 01:27

5 respostas

7

Não existe um "Javascript to HTML converter". Javascript é uma linguagem de programação, não uma linguagem de marcação. Os navegadores não convertem Javascript em HTML, eles executam o código Javascript e o efeito do código Javascript é modificar o HTML. O que você procura é um interpretador de Javascript que possa processar o documento HTML.

Uma maneira de fazer isso é usar um mecanismo de navegação nos bastidores. Selênio e Watir (ambos os mecanismos de testes de aplicativos da Web) são populares escolhas para chamar um navegador da Web e orientá-lo com um script - consulte Existe alguma boa ferramenta além do SeleniumRC que pode buscar páginas da Web incluindo conteúdo pós-pintado por JavaScript? .

Também há interfaces recentes para o Javascript e o DOM em várias linguagens de programação, como o Jswebkit em Python ( exemplo ).

Outra possibilidade é executar node.js , que é um interpretador JavaScript autônomo ( example ).

    
por 23.07.2013 / 03:04
1

Você pode tentar o suporte elinks com Javascript . Uma vez que é construir basta digitar:

elinks --dump 1 http://www.example.com/my-js-page.html

e isso deve ser feito. A documentação deles diz que o suporte a Javascript não é ótimo, mas essa é outra maneira de fazer isso.

    
por 03.12.2014 / 14:04
0

Eu recomendo usar phantomJS (ou casperJS , que fica no topo do phantomJS) para fazer essas tarefas. console.log() é usado para registrar em stdout . Você pode até fazer capturas de tela .

    
por 15.05.2015 / 23:19
0

Apenas para registro, tecnicamente existe uma maneira de converter JavaScript em HTML.

Eu uso muito o elemento inspecionar no Chrome e no FireFox, que é o primeiro lugar que aprendi HTML. Se você colar um JavaScript no elemento inspect, ele não reconhecerá sua função. Eu encontrei uma maneira de contornar isso. Eu me ensinei tudo o que sei o que é o que tornou mais fácil descobrir isso. Aqui está um exemplo:

Javascript:

<script>
function myFunction() {
    document.getElementById("demo").innerHTML = "Hello World";
}
</script>

JavaScript para HTML:

getElementById('demo').innerHTML='Hello World';

O HTML lê os códigos HTML de maneira diferente dos JavaScripts, então tenho que simplificar o JavaScript para obter o código HTML. Tecnicamente, é um JavaScript, já que ele executa a função JavaScript, mas ainda é HTML, porque está no formato HTML.

    
por 15.05.2015 / 22:15
-1
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- sadiq khatri -->
<ins class="adsbygoogle"
     style="display:inline-block;width:728px;height:90px"
     data-ad-client="ca-pub-6007294001515858"
     data-ad-slot="2073708321"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
    
por 20.02.2015 / 09:15