2017-10-31 17 views
0

私はこのテーブルをPythonスクリプト内の100行のすべての7ページのCSVとしてエクスポートしますが、スクリプトの下でこのエラーが発生しています。Python:テーブルに一致するパターンが見つかりません '。+'

"http://www.nhl.com/stats/player?aggregate=1&gameType=2&report=points&pos=S&reportType=game&startDate=2017-10-19&endDate=2017-10-29&filter=gamesPlayed,gte,1&sort=points,goals"

import pandas as pd 

dfs = pd.read_html('http://www.nhl.com/stats/player?aggregate=1&gameType=2&report=skatersummary&pos=S&reportType=game&startDate=2017-10-19&endDate=2017-10-29&filter=gamesPlayed,gte,1&sort=points,goals,assists') 
df = pd.concat(dfs, ignore_index=True) 
df.to_csv("1019_1029.csv", index=False) 
print(df) 

とValueError:いいえテーブルが一致するパターンを発見していない '+'

+0

コードから、未定義の '' 'df'''というエラーが発生するはずです。なぜなら、使用前にそれを割り当てていないからです。 Jupiterノートブックを使ってコードを編集して起動していますか?あなたが "カーネルの再起動"を行うまで、グローバル状態を保存します。 –

+0

私はコメントアウトするつもりはありませんでした。私は何かを試していて、それを偶然に残しました。私はちょうどpythonシェルを使用します。 –

答えて

1

このサイトは文句を言わないpandas.read_htmlで動作します。 pandas documentationによると:

This function searches for <table> elements and only for <tr> and <th> rows and <td> elements within each <tr> or <th> element in the table. <td> stands for “table data”.

しかし、あなたがテーブルに用途< div>の構造化データのための要素を解析しようとしているサイト: したがってSource code of reffered page

、あなたはこのデータを読み取るために、カスタム解析ソリューションが必要になりますサイト。

+2

クラス名を使って、このhtmlを '

'、 ''、 ''などに変換できます。それを変換するにはbeautifulsoupのようなhtmlパーサライブラリを使用し、出力を 'pandas.read_html'に渡すことができます。 https://stackoverflow.com/questions/5289189/how-to-change-tag-name-with-beautifulsoup –

+0

このシナリオではどのように見えますか? –

関連する問題