使用Selenium获取整个页面的内容
在本文中,我们将讨论使用Selenium获取整个页面内容的方法。对于相同的方法,大致可以有两种方法。让我们详细讨论它们。
方法一:
为了从整个页面中提取可见文本,我们可以使用find_element_by_*方法来帮助我们查找或定位页面上的元素。然后,我们将使用文本方法 这有助于从特定的 Web 元素中检索文本。
方法
- 导入模块
- 实例化驱动程序
- 获取页面内容
- 显示内容被抓取
- 关闭驱动程序
句法:
driver.find_element_by_class_xpath(“/html/body”).text
要在页面上查找或定位多个元素:
- find_element_by_link_text
- find_element_by_partial_link_text
- find_element_by_xpath
- find_element_by_tag_name
- find_element_by_class_name
- find_element_by_css_selector
- find_element_by_id
- find_element_by_name
我们可以使用上述这些方法在整个页面上查找或定位元素。最常用的方法是find_element_by_xpath ,它可以帮助我们轻松定位任何元素。我们将根据我们的要求使用适当的方法。
程序:
Python3
# importing the modules
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
# using webdriver for chrome browser
driver = webdriver.Chrome(ChromeDriverManager().install())
# using target url
driver.get(
"https://www.geeksforgeeks.org/competitive-programming-a-complete-guide/")
# printing the content of entire page
print(driver.find_element_by_xpath("/html/body").text)
# closing the driver
driver.close()
Python3
# Importing important library
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
# using chrome browser
driver = webdriver.Chrome(ChromeDriverManager().install())
# Target url
driver.get(
"https://www.geeksforgeeks.org/competitive-programming-a-complete-guide/")
# Storing the page source in page variable
page = driver.page_source.encode('utf-8')
# print(page)
# open result.html
file_ = open('result.html', 'wb')
# Write the entire page content in result.html
file_.write(page)
# Closing the file
file_.close()
# Closing the driver
driver.close()
输出:
方法二:
还有另一种方法可用于实现我们想要的输出。这一行将检索网页的整个文本。一旦我们得到提取的数据,在文件系统的帮助下,我们将结果存储在result.html文件中。
方法:
- 导入模块
- 实例化网络驱动程序
- 从 URL 获取内容
- 打开文件
- 将内容保存到文件
- 关闭文件
- 关闭驱动程序
句法:
driver.page_source
程序:
蟒蛇3
# Importing important library
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
# using chrome browser
driver = webdriver.Chrome(ChromeDriverManager().install())
# Target url
driver.get(
"https://www.geeksforgeeks.org/competitive-programming-a-complete-guide/")
# Storing the page source in page variable
page = driver.page_source.encode('utf-8')
# print(page)
# open result.html
file_ = open('result.html', 'wb')
# Write the entire page content in result.html
file_.write(page)
# Closing the file
file_.close()
# Closing the driver
driver.close()
输出:
单击此处下载上述程序的输出文件。