我正在用刮的beautifulsoup ESPN NHL統計,試圖像美麗的湯VS ESPN
PLAYER,TEAM,GP,G,A,PTS,創造的東西+/-,PIM,PTS/G,SOG,PCT,GWG,G,A,G,A,
Patrick Kane,RW,CHI,82,46,60,106,17,30,1.29,287,16.0,9,17, 20,0,0
傑米鴨舌,LW,DAL,82,41,48,89,7,64,1.09,247,16.6,5,17,13 2 3
悉尼克羅斯比,C, PIT,80 ,36,49,85,19,42,1.06,248,14.5,9,10,14,0,0
到目前爲止我已經得到的東西,遍歷,並在所有的數據拉動,但它沒有逗號和頭
import urllib2
from bs4 import BeautifulSoup
url = "http://www.espn.com/nhl/statistics/player/_/stat/points"
page = urllib2.urlopen(url)
f = open('nhlstarter.txt', 'w')
soup=BeautifulSoup(page, "html.parser")
for tr in soup.select("#my-players-table tr[class*=player]"):
for ob in range(1,15):
player_info = tr('td')[ob].get_text(strip=True)
print(player_info)
f.write(player_info + '\n')
f.close()
所有一列這得到
Patrick Kane, RW
CHI
82
46
60
106
17
30
1.29
287
16.0
9
17
20
等
我怎麼柱狀數據轉換成有用的行?我想我也許可以做一些類似如下:
for tr in soup.select("#my-players-table tr[class*=player]"):
for ob in range(1,15):
player_info + str(ob) = tr('td')[ob].get_text(strip=True)
print(player_info + str(ob))
f.write(player_info + str(ob) "," + player_info + str(ob) '\n')
但慘遭失敗,因爲它沒有正確的循環增加變量
關於如何可以抓住的所有列的任何建議表一次或循環通過獲得一個可用的csv將不勝感激。
感謝您的幫助
但什麼是你的問題嗎? – drum
對不起,這不是很明確,問題和最新的嘗試追加 – ike
呃...... [ESPN服務條款](https://disneytermsofuse.com/english/) - *您同意不訪問,監控或複製,或允許他人或實體使用機器人,蜘蛛,刮板或其他自動化手段或手動程序訪問,監控或複製迪士尼服務的任何元素,未經我們的明確書面許可* –