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 回答