Я новичок в Selenium и пытаюсь получить данные из TradingView. Я пытаюсь получить данные графика из графика TradingView для биткойнов. Мне удалось войти в систему, но я столкнулся с проблемами при попытке найти X-путь к диаграмме биткойнов. я попытался проверить элемент класса диаграммы, но не смог этого сделать. в конечном итоге я сталкиваюсь с этой ошибкой. пожалуйста, помогите мне с этим вопросом. очень признателен.
сообщение об ошибке
Failed to extract data: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//div[contains(@class, 'chart-container single-visible top-full-width-chart active')]"}
Это мой код.
from selenium import webdriver
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
# Set up Selenium WebDriver for Colab
options = webdriver.ChromeOptions()
options.add_argument('--headless') # Run Chrome in headless mode
options.add_argument('--no-sandbox') # Needed for Colab
options.add_argument('--disable-dev-shm-usage') # Overcome resource limitations
options.add_argument('--disable-gpu') # Disable GPU for compatibility
options.add_argument('--window-size=1920x1080') # Set a default window size
driver = webdriver.Chrome(options=options)
# Example: Open the TradingView login page
driver.get("https://www.tradingview.com/accounts/signin/")
# Wait for the login page to load
wait = WebDriverWait(driver, 15)
# newly added by me
email_button = driver.find_element(By.XPATH, "//button[@name='Email']")
email_button.click()
# Login process (replace with your email and password)
# Locate the email/username field using the 'id' or 'name' attribute
email_field = wait.until(EC.presence_of_element_located((By.ID, "id_username")))
email_field.send_keys("tom") # Replace with your email
# Locate the password field using the 'id' or 'name' attribute
password_field = driver.find_element(By.ID, "id_password")
password_field.send_keys("Fs5u+7(3A?") # Replace with your password
# Locate and click the login button
# Edited by me
login_button = driver.find_element(By.XPATH, "//span[text()='Sign in']")
# login_button.click()
# Wait for login to complete (adjust sleep time as necessary)
time.sleep(5)
if "Sign In" in driver.page_source:
print("Login failed. Check your credentials.")
else:
print("Login successful!")
# Navigate to a chart page (e.g., btc chart)
driver.get("https://www.tradingview.com/chart/kvfFl ... X%3ABTCUSD")
time.sleep(5)
# Example: Extract data from a visible container
try:
print('Connected to chart')
data_container = driver.find_element(By.XPATH, "//div[contains(@class, 'chart-container single-visible top-full-width-chart active')]")
print("Extracted Data:")
print(data_container.text)
except Exception as e:
print("Failed to extract data:", e)
# Close the browser
driver.quit()
Подробнее здесь: https://stackoverflow.com/questions/793 ... view-chart
Python Selenium пытается получить данные из диаграммы TradingView ⇐ Python
Программы на Python
-
Anonymous
1736168649
Anonymous
Я новичок в Selenium и пытаюсь получить данные из TradingView. Я пытаюсь получить данные графика из графика TradingView для биткойнов. Мне удалось войти в систему, но я столкнулся с проблемами при попытке найти X-путь к диаграмме биткойнов. я попытался проверить элемент класса диаграммы, но не смог этого сделать. в конечном итоге я сталкиваюсь с этой ошибкой. пожалуйста, помогите мне с этим вопросом. очень признателен.
сообщение об ошибке
Failed to extract data: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//div[contains(@class, 'chart-container single-visible top-full-width-chart active')]"}
Это мой код.
from selenium import webdriver
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
# Set up Selenium WebDriver for Colab
options = webdriver.ChromeOptions()
options.add_argument('--headless') # Run Chrome in headless mode
options.add_argument('--no-sandbox') # Needed for Colab
options.add_argument('--disable-dev-shm-usage') # Overcome resource limitations
options.add_argument('--disable-gpu') # Disable GPU for compatibility
options.add_argument('--window-size=1920x1080') # Set a default window size
driver = webdriver.Chrome(options=options)
# Example: Open the TradingView login page
driver.get("https://www.tradingview.com/accounts/signin/")
# Wait for the login page to load
wait = WebDriverWait(driver, 15)
# newly added by me
email_button = driver.find_element(By.XPATH, "//button[@name='Email']")
email_button.click()
# Login process (replace with your email and password)
# Locate the email/username field using the 'id' or 'name' attribute
email_field = wait.until(EC.presence_of_element_located((By.ID, "id_username")))
email_field.send_keys("tom") # Replace with your email
# Locate the password field using the 'id' or 'name' attribute
password_field = driver.find_element(By.ID, "id_password")
password_field.send_keys("Fs5u+7(3A?") # Replace with your password
# Locate and click the login button
# Edited by me
login_button = driver.find_element(By.XPATH, "//span[text()='Sign in']")
# login_button.click()
# Wait for login to complete (adjust sleep time as necessary)
time.sleep(5)
if "Sign In" in driver.page_source:
print("Login failed. Check your credentials.")
else:
print("Login successful!")
# Navigate to a chart page (e.g., btc chart)
driver.get("https://www.tradingview.com/chart/kvfFlBvq/?symbol=INDEX%3ABTCUSD")
time.sleep(5)
# Example: Extract data from a visible container
try:
print('Connected to chart')
data_container = driver.find_element(By.XPATH, "//div[contains(@class, 'chart-container single-visible top-full-width-chart active')]")
print("Extracted Data:")
print(data_container.text)
except Exception as e:
print("Failed to extract data:", e)
# Close the browser
driver.quit()
Подробнее здесь: [url]https://stackoverflow.com/questions/79333125/python-selenium-trying-to-get-data-from-tradingview-chart[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия