访问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.