Невозможно очистить текст из div

#html #selenium-webdriver

Вопрос:

Я попытался очистить печатный текст из div и получить ошибку, как показано ниже! пожалуйста, помогите

 from selenium import webdriver
import pandas as pd

driver = webdriver.Chrome(executable_path= '/Users/leah/Documents/Scrape-Finantials/webdrivers/chromedriver')

driver.get('https://www.dummy-id.com/StockInfo/_ScreenerScan.html?SYMBOLS_PP=25amp;SYMBOLS_ONLY=onamp;sort1=MaxVWVPamp;sort2=Noneamp;sort3=Noneamp;WN=Lowfloatamp;MaxFloat=20000000amp;XN=onamp;X_NYSE=onamp;X_ARCA=on')

ticker = driver.find_elements_by_xpath('//body/div[4]/div/div/div/div[1]/div')
len(ticker)

print(ticker.text)

#Try printing ticker and get following error!
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-45-0ca4276d61ba> in <module>
----> 1 print(ticker.text)
AttributeError: 'list' object has no attribute 'text'
 

Комментарии:

1. Пожалуйста, уточните вашу конкретную проблему или предоставьте дополнительные сведения, чтобы выделить именно то, что вам нужно. Как написано в настоящее время, трудно точно сказать, о чем вы спрашиваете.

Ответ №1:

При вызове find_elements_by_xpath() будет получен список элементов, а не один элемент. Вызов len(ticker) — это нормально, но ticker .текст неверен.

если вы хотите распечатать каждый отдельный элемент, вам нужен цикл

 ticker = driver.find_elements_by_xpath('//body/div[4]/div/div/div/div[1]/div')
len(ticker)
for elem in ticker:
  print(elem.text)
 

Ссылка: https://selenium-python.readthedocs.io/locating-elements.html

Комментарии:

1. Большое спасибо