2011-10-15 70 views
1

我現在正在製作一個網絡爬蟲。我可以在Python中找出JavaScript的結果嗎?

從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> 
+0

如果任何網絡爬蟲從javascript中提取鏈接,我會感到驚訝。 –

回答

1

您需要安裝node.js並運行一段單獨的代碼,以執行上下文中的Javascript代碼以發出html。這可以使用jsdom,但它的關鍵是從HTML頁面提取Javascript代碼,並正確設置上下文。

0

Python沒有提供一種方式來執行JavaScript,這將是一個很大的任務,甚至可能不是你想要的,因爲你不知道如何執行所有適當的Javascript。

對於您所展示的代碼,您可以簡單地將整個事件正則表達以從中獲取類似URL的字符串,但這可能是非常特殊且容易出錯的。

相關問題