访问HTML源代码的Python Selenium

如何在Python中使用Selenium模块获取variables中的HTML源代码?

我想要做这样的事情:

from selenium import webdriver browser = webdriver.Firefox() browser.get(raw_input("Enter URL: ")) if "whatever" in html_source: # Do something else: # Do something else 

我该怎么做? 我不知道如何访问HTML源代码。

你需要调用page_source属性。 见下文。

 from selenium import webdriver browser = webdriver.Firefox() browser.get(raw_input("Enter URL: ")) html_source = browser.page_source if "whatever" in html_source: # do something else: # do something else 

有了Selenium2Library,你可以使用get_source()

 import Selenium2Library s = Selenium2Library.Selenium2Library() s.open_browser("localhost:7080", "firefox") source = s.get_source() 

要回答关于获取用于urllib的URL的问题,只需执行以下JavaScript代码:

 url = browser.execute_script("return window.location;") 

通过使用页面源代码,您将获得完整的HTML代码。
因此,首先决定您需要检索数据的代码块或代码块,或单击元素。

  options=driver.find_elements_by_name_("XXX") for option in options: if(option.text=="XXXXXX"): print option.text option.click() 

您可以按名称,XPath,ID,链接和CSSpath查找元素。

要简单地下载一个页面的HTM代码,你可以使用这个:

 import urllib.request page="YOUR_URL" with urllib.request.urlopen(page) as response: html = response.read() 

如果源是某种XML文件,则可以使用其他的co编码和/或replace部分代码:

 html_source=html.decode(encoding='UTF-8') html_source=html_source.replace("\n","") 

我build议使用urllib获取源代码,如果要parsing,请使用“ 美丽的汤” 。

 import urllib url = urllib.urlopen("http://example.com") # Open the URL. content = url.readlines() # Read the source and save it to a variable.