簡體   English   中英

如何在python中使用硒訪問警報框或控制台輸出?

[英]How to access alert box or console output with selenium in python?

我的目的是訪問特定網頁的js變量,我希望將其打印在terminal / cmd中,以進行進一步的處理,例如將Output寫入文件。

from selenium import webdriver
with open("list_links.txt","rb") as fs:
    data = fs.readlines()
    for line in data:
        print "checking for: ",line 
        baseurl = line
        driver = webdriver.Chrome()
        driver.set_window_size(140, 800)
        driver.get(baseurl)
        driver.execute_script("alert(someVariable)")


其中txt文件包含不同的鏈接,我打開每個頁面並彈出一個警告框,該警告框為我提供了瀏覽器中的輸出。

一切工作正常, 我只想讀取/訪問警報框中獲得的輸出

所以,有什么辦法可以做到這一點?

另外,如果有任何方法可以從console.log輸出文本中讀取相同內容,請共享。

您無需閱讀警報的文本內容即可獲得someVariable值,如下所示:

var_text = driver.execute_script("""
                                 var someVariable = "someValue";
                                 return someVariable;
                                 """)

print(var_text) # Output- "someValue"

您可以嘗試以下方式獲取提醒文字

alert = driver.switch_to_alert()
alert_text = alert.text

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM