пытался написать простого bitcoin бота, который будет публиковать в группе WhatsApp цену bitcoin каждый час или минуту, просто интересный проект, который я хотел бы узнать больше о Python.
В любом случае, мне нужно, чтобы браузер работал без монитора, чтобы я мог оставить свой браузер WhatsApp открытым, чтобы он мог бездействовать, отправляя сообщения, пока меня нет, не уверен, что есть лучшее решение для этого, но я могу понять, это позже. Сейчас у меня проблемы с корректным просмотром веб-страницы ценового элемента bitcoin на сайте coindesk.com. Когда я использую:
driver = Chrome(webdriver)
url = "https://www.coindesk.com/price/bitcoin"
driver.get(url)
#getting price list class
time.sleep(3)
prices = driver.find_elements_by_class_name("price-large")
number = prices[0]
text = number.text
, это получается просто отлично. У меня также был некоторый дополнительный код, чтобы просто заменить любые символы или пробелы на пустые символы, но это не обязательно.
Но я пытался запустить его без головы, поэтому я сейчас пытаюсь:
import time
import os
import webdriverplus
chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("--window-size=1920x1080")
chrome_driver = os.getcwd() +"\\chromedriver.exe"
print(chrome_driver)
while True:
driver = webdriverplus.Chrome(chrome_options=chrome_options, executable_path=chrome_driver)
url = "https://www.coindesk.com/price/bitcoin"
driver.get(url)
#getting price list class
time.sleep(2)
prices = driver.find_element_by_class_name("price-large")
number = prices[0]
text = number.text
#get rid of unecessary symbols
if '$' in text:
text = text.replace('$',"")
text = text.replace('\n',"")
print(text)
driver.quit()
но это дает мне:
Traceback (most recent call last):
File "C:/Users/PC/.PyCharmCE2018.3/config/scratches/bitcoinbot.py", line 21, in <module>
number = prices[0]
KeyError: 0
Если есть более элегантный способ решения этой проблемы, я буду рад любой помощи, которую смогу получить. Спасибо.