How to Scrape With Headless Firefox
Discover how to use headless Firefox with Selenium, Playwright, and Puppeteer for web scraping, including practical examples for each library.
XPath selectors are one of the most popular ways to parse HTML pages when web scraping. Using Selenium, to find elements by XPath we can use driver.find_element()
and driver.find_elements()
methods:
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get("https://httpbin.dev/html")
element = driver.find_element(By.XPATH, '//p')
# then we can get the element text
print(element.text)
"Availing himself of the mild, summer-cool weather that now reigned in these latitudes..."
# we can also get tag name and attributes:
print(element.tag_name)
print(element.get_attribute("class"))
# for multiple elements we need to iterate
for element in driver.find_elements(By.XPATH, '//p'):
print(element.text)
driver.close()