我的目标是访问特定网页的js变量,我想在terminal / cmd中打印它以进一步处理,例如将输出写入文件。
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输出文本中读取相同的内容,请分享。
答案 0 :(得分:1)
如果没有阅读警报的文字内容,您可以获得someVariable
的价值,如下所示:
var_text = driver.execute_script("""
var someVariable = "someValue";
return someVariable;
""")
print(var_text) # Output- "someValue"
答案 1 :(得分:0)
您可以尝试以下方式获取提醒文字
alert = driver.switch_to_alert()
alert_text = alert.text