I am trying to export data into csv. When I export it, it is exported as a singular row and each additional data is appended on the same row. The result is a very long row which is difficult to navigate.
The goal is for each value (Time, Wallets) to have their own column and each time the script is ran, the new data is appended to the csv under the respective column. I have tried guides online but wasn't able to find any solutions.
Here is my code if anyone has any suggestions or ideas. Additionally, if anyone has any suggestions for restructuring my code or making it better, I'd love to hear it. As a beginner I would like to learn as much as possible.
#Open ChromeDriver
PATH = ('/Users/chris/Desktop/chromedriver')
driver = webdriver.Chrome(PATH)
#Get Website
driver.get("https://bitinfocharts.com/top-100-richest-dogecoin-addresses.html")
driver.implicitly_wait(5)
driver.maximize_window()
#Creates the Time
now = datetime.now()
current_time = now.strftime("%m/%d/%Y, %H:%M:%S ")
#Identify the section of page
time.sleep(3)
page = driver.find_element(By.CSS_SELECTOR,'.table.table-condensed.bb')
#Gather the data
time.sleep(3)
num_of_wallets = page.find_element(By.XPATH, "//html/body/div[5]/table[1]/tbody/tr[10]/td[2]").text
#Write to CSV
table_dict = {"Time":current_time,
"Wallets":num_of_wallets}
headers = ["Time", "Wallets"]
file = open('dogedata.csv', 'a')
file.write(f'{current_time},{num_of_wallets}')
file.close()
file.write('\n')before your currentfile.close(). This should create a new line whenever you writecsvmodule in the standard library to create the file. It's built-in, debugged, and easy to use.