Автоматизация стоковых обновлений - PullRequest
1 голос
/ 22 апреля 2020

Я строю бота, чтобы печатать призы облигаций от часа к часу. Однако я сталкиваюсь с двумя ошибками:

  1. Поскольку для выполнения задачи требуется время от времени открываться браузер, это ухудшает работу при использовании ноутбука. Есть ли способ сохранить эту задачу в качестве «фонового» правила?

  2. Я использую библиотеку расписаний для установки обновления, но я не совсем уверен, что это правильно (хотя я прочитайте инструкцию). Или установленное время не соблюдается (я установил на 10 минут, а код читается с 5 до 5) или время функции не обновляется (повторяется минуты / часы / секунды).

Код ниже:

import sys
import os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
import time
import datetime
import schedule

clock = datetime.datetime.now()

def preço():
os.chdir('C:/Users/Thiago/Desktop/Backup/Python')
options = webdriver.ChromeOptions()
options.add_experimental_option('useAutomationExtension', False)
driver = webdriver.Chrome(options=options)

driver.get("https://www.google.com/")
elem = driver.find_element_by_name("q")
elem.clear()
elem.send_keys("cvcb3")

time.sleep(1)

elem = driver.find_element_by_name("btnK")
elem.click()

time.sleep(2)

cvcb3 = driver.find_element_by_xpath(".//span[@jsname = 'vWLAgc']")

preço_cvcb3 = open('preço_cvcb3.txt', 'a')

preço_cvcb3.write('O preço da ação da CVC é ' + cvcb3.get_attribute("innerHTML") + ' - Extração feita ás ' + clock.strftime("%I:%M:%S %p") + '.\n')

preço_cvcb3.close()

print('O preço da ação da CVC é ' + cvcb3.get_attribute("innerHTML") + ' - Extração feita ás ' + clock.strftime("%I:%M:%S %p") + '.\n')

driver.close()

schedule.every(1).minutes.do(preço)

while True:
   schedule.run_pending()
   time.sleep(1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...