1

私は今、ウェブクローラーを作っています。

HTML からリンクを取得するのは簡単ですが、javascript の結果からリンクを取得するのは簡単ではありません。

リンクがどこで参照されているかを知るために、javascript の結果を取得できますか?

例えば。

Python の JavaScript コードから google.com へのリンクを取得するにはどうすればよいですか?

<!DOCTYPE html>
<html lang="en">
    <head></head>
    <body>
        <a href="#" id="goog">to google</a>
    </body>
    <script>
        document.getElementById('goog').onclick = function() {
            window.location = "http://google.com";
        };

    </script>
</html>
4

2 に答える 2

1

node.js をインストールし、JavaScript コードをコンテキストで実行して HTML を出力する別のコードを実行する必要があります。これは を使用して可能ですjsdomが、重要なのは HTML ページから Javascript コードを抽出し、コンテキストを正しく設定することです。

于 2011-10-16T01:06:04.010 に答える
0

Python は Javascript を実行する方法を提供していません。これは大きなタスクであり、適切な Javascript のすべてを実行する方法がわからないため、希望するものでさえない可能性があります。

あなたが示したコードについては、単純に全体を正規表現して URL のような文字列を取得できますが、それは非常にアドホックでエラーが発生しやすい可能性があります。

于 2011-10-16T00:10:36.683 に答える