2017-03-03 55 views
0

我已經創建了一個腳本來檢索文本從bet365使用硒。目標是繪製隨時間變化的圖形。我已經完成了大部分腳本,但是我現在正在手工處理下面的問題,這並不理想。Python硒 - 運行JavaScript的點擊事件調用返回網址

我有一個我想要從中獲取URL的元素列表。該URL不在任何href標記中,並且它們對我來說似乎是由javascript生成的(每個元素被單擊時)。

由於每個頁面都很重,需要時間加載,我不想單擊每個元素,獲取URL,然後返回到主頁面。我寧願調用JavaScript函數,並希望收到URL返回,這可能嗎?

不幸的是,我沒有javascript的背景,並設置斷點或檢查時間線變得相當壓倒性。到目前爲止,我已經找到了鍍鉻調試我認爲這是什麼創造了URL此功能:

function hrefEvent(n){ 
    n =n || window.event; 
    var t = n.target || n.srcElement, i = $(t), r; 
    return t.href 
} 

這是否看起來像一段JavaScript代碼我應該打電話?

我可以用硒調用這個腳本嗎?

回答

0

硒提供execute_script方法

driver = webdriver.Firefox() 

driver.get("http://bet365/bet365") 
driver.execute_script("function hrefEvent(n){n=n||window.event;var t=n.target||n.srcElement,i=$(t),r;return t.href?") 
+0

感謝。是的,我知道有關execute_script方法,但即時通訊找到我需要運行的JavaScript淹沒。 我試圖複製我認爲完整的方法,http://pastebin.com/quNdbEK1,但我只是返回無每個函數調用。 – user3560858