Python не печатает достаточно столбцов - PullRequest
0 голосов
/ 03 июля 2018

У меня есть 3 столбца данных, которые мне нужно распечатать, тикеры, emps и сектор. Эта строка кода, где проблема, и это только дает мне первый столбец. Я попытался изменить строку [0] на строку [0,1,2], но не повезло. Как мне получить все 3 столбца? Также я изменил его на row [2], а затем он дает мне только последний столбец сектора.

Спасибо

ws1.cell(row=index+1, column=1).value = row[0]

код

tickers = driver.find_elements_by_css_selector('a.tv-screener__symbol') 
emps = driver.find_elements_by_xpath('//tbody/tr/td[10]')
sectors = driver.find_elements_by_xpath('//tbody/tr/td[11]')

wb = load_workbook(filename='C:\\Users\\Jake\\Wonder.xlsm',
read_only=False,keep_vba=True)
ws1 = wb.active

for index in range(len(tickers)):
   row = [tickers[index].text, emps[index].text, sectors[index].text]
   ws1.cell(row=index+1, column=1).value = row[0]

1 Ответ

0 голосов
/ 03 июля 2018

Вы когда-либо назначаете значение только для столбца 1. Присвойте нужные значения столбцам 2 и 3.

ws1.cell(row=index+1, column=1).value = row[0]
ws1.cell(row=index+1, column=2).value = row[1]
ws1.cell(row=index+1, column=3).value = row[2]

Или, точнее, избавьтесь от row = [...] и просто назначьте их напрямую.

ws1.cell(row=index+1, column=1).value = tickers[index].text
ws1.cell(row=index+1, column=2).value = emps[index].text
ws1.cell(row=index+1, column=3).value = sectors[index].text
...