如何通过Selenium获取JavaScript结果?

3 投票
1 回答
3017 浏览
提问于 2025-04-15 20:34

我有以下代码:

from selenium import selenium

selenium = selenium("localhost", 4444, "*chrome", "http://some_site.com/")
selenium.start()

sel = selenium
sel.open("/")
sel.type("ctl00_ContentPlaceHolder1_SuburbTownTextBox", "Adelaide,SA,5000")
sel.click("ctl00_ContentPlaceHolder1_SearchImageButton")

#text = sel.get_body_text()
text = sel.get_html_source()

print(text)

点击这个按钮会执行一个javascript文件,然后在同一页面上显示结果。显然,print(text) 只会打印出原始的html源代码。那我该怎么才能获取javascript的结果呢?

1 个回答

4

试试这个方法来获取一个id为your-id的HTML元素的内容:

sel.get_eval("this.browserbot.getCurrentWindow().document.getElementById('your-id').innerHTML"

撰写回答