I am very new to web scraping and just learned it today. I am trying to get data about current stocks yet I get a weird error. Any help? Error:
Traceback (most recent call last): File "c:\Users\Heage\Coding\Python\Selenium\WebScraping\Popular TV Shows\main.py", line 17, in company = companies.find_element_by_class_name("tv-data-table__row tv-data-table__stroke tv-screener-table__result-row") AttributeError: 'list' object has no attribute 'find_element_by_class_name'
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
PATH = "C:\Program Files (x86)\chromedriver.exe"
driver = webdriver.Chrome(PATH)
driver.get("https://www.tradingview.com/markets/stocks-usa/market-movers-active/")
try:
main = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "js-screener-container")))
companies = main.find_elements_by_class_name("tv-data-table__tbody")
for company in companies:
company = companies.find_element_by_class_name("tv-data-table__row tv-data-table__stroke tv-screener-table__result-row")
for companyInfo in company:
companyInfo = company.find_element_by_class_name("tv-data-table__cell apply-common-tooltip tv-screener-table__cell tv-screener-table__cell--left tv-screener-table__cell--big tv-screener-table__cell--with-marker")
for companyInfoMore in companyInfo:
companyInfoMore = companyInfo.find_element_by_class_name("tv-screener-table__symbol-container ")
for companyTitle in companyInfoMore:
companyTitle = companyInfoMore.find_element_by_class_name("tv-screener__symbol apply-common-tooltip")
print(companyTitle)
for companyChangePercent in companyInfo:
companyChangePercent = companyInfo.find_element_by_class_name("tv-data-table__cell tv-screener-table__cell tv-screener-table__cell--up tv-screener-table__cell--big tv-screener-table__cell--with-marker")
print(companyChangePercent)
finally:
driver.quit()