Здравствуйте, есть скрипт на Selunium'e, который выводит данные в консоль, при их появлении(то есть, появились новые данные - вывел, еще раз появились - вывел). Мне надо сделать, чтобы они записывались в csv файл в том же ритме. А именно, просто запись я смог сделать(то есть скрипт отработал свое, данные записались), но как можно сделать, чтобы при выводе в консоль новой строки, она моментально записывалась в csv?
Просто что-то может пойти не по плану и всем данным кердык:D
Данные выводятся в стиле:
1) Last game: 3.13 Время: 03:15:16
2) Last game: 21.89 Время: 03:15:57
3) Last game: 1.14 Время: 03:16:08
...
Код:
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get("https://rublix.best/")
f = open('games.csv', 'a+')
prev_bet = 0
a = 1
time.sleep(12)
while True:
# Находит блок с "Историей игр"
all_bets = driver.find_elements_by_xpath("//div[contains(@class, 'history-line')]")
# Определение времени на данный момент
named_tuple = time.localtime() # получить struct_time
time_string = time.strftime("Время: %H:%M:%S", named_tuple)
# Выбирает последнюю из списка игру
if all_bets:
last_bet = all_bets[0].text
# Выводит на экран последнюю игру в формате: ''' 1) Last game: 1.22 Время: 04:50:16 '''
if last_bet != prev_bet:
prev_bet = last_bet
t = str(a) + ') ' + 'Last game: {0} {1}'.format(last_bet, time_string)
print(t)
a+=1
f.write(t + '\n')
time.sleep(1)
f.close()