Я не получаю данных или сообщение об ошибке строки, когда я пытаюсь записать в CSV-файл - PullRequest
0 голосов
/ 04 июня 2019

Это первое, что я когда-либо делал с любым типом кодирования и застрял на некоторое время.Я могу запустить этот код и увидеть результаты в моей оболочке Python, но в файле csv нет данных.

import csv

import urllib .request

from bs4 import BeautifulSoup

filename = "dataoutput2.csv"

f = open(filename, "w")

f.write("")



soup = BeautifulSoup(urllib.request.urlopen("https://www.fangraphs.com/dailyprojections.aspx?pos=all&stats=pit&type=sabersim&team=0&lg=all&players=0").read(),'lxml')

tbody = soup('table',{"class":"rgMasterTable"})[0].find_all('tr')

for row in tbody:

cols = row.findChildren(recursive=False)

cols =[ele.text.strip() for ele in cols]

f.write

print(cols)



f.close()

Это ничего не дает мне в файле csv, и если я попробую f.write (столбцы), я получаю

enter code here строка 14, в enter code here f.write (столбцы) enter code here TypeError: аргумент write () должен быть str, а не list

«Имя», «Команда», «Игра», «W», «IP», «TBF», «H», «1B», «2B», «3B», «HR», «BB», «SO ',' Yahoo ',' FanDuel ',' DraftKings '] [' Аарон Нола ',' Phillies ',' PHI @ SD ',' .48 ',' 6.50 ', '26 .73', '5.43', '3.43',' .99 ',' .06 ',' .96 ',' 2.31 ',' 7.72 ', '24 .77', '40 .23 ', '22 .41'] ['Walker Buehler', 'Dodgers', 'LAD @ARI ',' .47 ',' 6.49 ', '26 .60', '5.77', '3.66', '1.25', '.23', '.64', '1.90', '6.59', '22 .68 ',«37 .04», «20 .28»] [«Робби Рэй», «Diamondbacks», «LAD @ ARI», «.27», «5.78», «25 .35», «4.74», «2.82», «.98»,'.13', '.81', '3.76', '8.18', '21 .68 ', '37 .05', '19 .94 ']

Это результаты, которые я печатаю в своей оболочке python,Я хотел бы, чтобы это закончилось в строке и столбцах.Буду признателен за любую помощь.Заранее спасибо.

...