как достать из #shadow-root (open) текст при помощи Selenium на python
import data
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
try:
s = Service(executable_path=r"C:\Users\dimoc\PycharmProjects\steam_bot\Chromedriver_win\chromedriver.exe")
options = webdriver.ChromeOptions()
options.add_argument(
r"--load-extension=C:\Users\dimoc\AppData\Local\Google\Chrome\User Data\Default\Extensions\jjicbefpemnphinccgikpdaagjebbnhg\3.0.3_0")
driver = webdriver.Chrome(service=s, options=options)
driver.maximize_window()
driver.get(url=data.skin_link)
all_skins_and_price = driver.find_elements(By.CLASS_NAME, 'market_listing_row')
skins_list = all_skins_and_price[1:]
for i in range(0, 1):
skin_price = skins_list[i].find_element(By.CLASS_NAME, 'market_listing_price_with_fee').text
driver.implicitly_wait(5)
skin_float = skins_list[i].find_element(By.TAG_NAME, 'csgofloat-item-row-wrapper')
shadow_root = skin_float.shadow_root
shadow_content = shadow_root.find_element(By.CSS_SELECTOR, 'div')
shadow_content.text
except Exception as ex:
print(ex)
finally:
driver.close()
driver.quit()
Я пытаюсь достать значение float
с сайта steam с расширением csgoFloat market checker
, но shadow_content
не выдает текст.
Источник: Stack Overflow на русском