Skip to content
Related Articles

Related Articles

Get contents of entire page using Selenium
  • Last Updated : 25 Feb, 2021

In this article, we will discuss ways to get the contents of the entire page using Selenium. There can broadly be two methods for the same. Let’s discuss them in detail.

Method 1:

For extracting the visible text from the entire page, we can use the find_element_by_* methods which help us find or locate the elements on the page. Then, We will use the text method which helps to retrieve the text from a specific web element.

Approach

  • Import module
  • Instantiate driver
  • Get content of the page
  • Display contents scraped
  • Close driver

Syntax:

driver.find_element_by_class_xpath(“/html/body”).text



To find or locate multiple elements on a page:

  • 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

We can use these above methods for finding or locating elements on a entire page. Most commonly used method is find_element_by_xpath which helps us to easily locate any elements. We will use appropriate methods as per our requirement.

Program:

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(
  
# printing the content of entire page
print(driver.find_element_by_xpath("/html/body").text)
  
# closing the driver
driver.close()


Output:

Method 2:

There is one another method available for achieving our desired output. This one line will retrieve the entire text of the web page. Once we get the extracted data, with the help of file system, we will store the result inside the result.html file.

Approach:

  • Import module
  • Instantiate webdriver
  • Get contents from the URL
  • Open a file
  • Save contents to a file
  • Close file
  • Close driver

Syntax:



driver.page_source

Program:

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(
  
# 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()


Output:

Click here to download the output file of above program.

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :