0
對不起,如果我的代碼很糟糕,我剛開始學習Python。CSV輸出到一個單元
我正在從HTML文件中抓取數據並嘗試寫入CSV。
問題是它將所有內容寫入一個單元格。
for table in soup.find_all('table', class_='players-table'):
for headers in soup.find_all('thead'):
for y in headers.findAll('th'):
[csvHeader.append(i) for i in y if y.getText() != '']
counter = 0
myfile = open('/Users/andrew/Documents/Projects/Football Data/ppi.csv', 'wb')
wr = csv.writer(myfile, delimiter=',', lineterminator='\n', quoting=csv.QUOTE_MINIMAL)
c = csv.writer(myfile)
c.writerow(csvHeader)
for table in soup.find_all('table', class_='players-table'):
for headers in soup.find_all('tbody'):
for rows in headers.findAll('tr'):
for x in rows.findAll('td'):
if x.getText() !='':
csvRows_temp.append(x.getText().replace('\n ','').replace('\n ',''))
counter +=1
if counter == 13:
myList = [','.join(csvRows_temp).encode('utf8').strip()]
csvRows_temp.append('\n')
c.writerow(myList)
csvRows_temp[:] = []
myList[:] = []
counter = 0
輸出是這樣的:
我怎樣才能使寫入每個細胞,而不是將它傳遞給單個細胞上的每一行的?
問題尋求幫助調試(「?爲什麼不是這個代碼工作」)必須包括期望的行爲,特定的問題或錯誤以及在問題本身中重現問題所需的最短代碼。沒有明確問題陳述的問題對其他讀者無益。請參閱:[如何創建最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。 – 2014-10-16 19:24:31
如果你不介意你在哪裏找到你想要抓取的HTML文件?我也對足球數據感興趣。 – GiannisIordanou 2014-10-16 19:24:54
evil_inside,http://www.premierleague.com/en-gb/players/ea-sports-player-performance-index.html EA爲巴克萊超級聯賽提供球員表現指數。如果您將每頁結果更改爲20以外的任何值,然後將paramItemsPerPage從URL更改爲999,您將獲得完整的數據列表。 – 2014-10-16 19:35:59