2017-05-20 10 views
1

問題は実際にデータを抽出するのではなく、見つけ出すことです。私はサッカーデータを手にしています。このサイトは合計で(すべての年)または年(シーズン)の間にそれをレイアウトしますが、htmlに含まれるデータはのすべての時刻のデータで、選択した季節ではなく、季節の統計が表示されます。興味深いことに、シーズンのデータをロードすると、最初にその変数のすべての時間のデータがロードされ、一時的に表示されます。 たとえば、htmlソースfor this siteの983行目の "td"タグ内の行で、Chelseaの勝利のページを26で表示すると515(Chelseaの勝利)と表示されます。 Can誰もがこの魔術を説明し、季節ごとにデータを掻く方法は?Python-BeautifulSoup&urllibで奇妙なHTML設定をWebで掻き集める

答えて

0

シーズンを選択すると、JSON形式のデータを返すAPIが使用されます。 JSONはHTMLよりも解析が簡単なので、これはあなたの仕事を楽にします。

Chromeウェブdevのツールで要求と応答を見ることができます:

  • F12キーを押してChromeでページを見ているとき。
  • [ネットワーク]タブに移動します。
  • [フィルタ]アイコンをクリックし、[XHR]をクリックします。
  • enter image description here

    あなたはfootballapi.pulselive.comへのXHRリクエストを確認する必要があり、シーズンを選択

。開発ツールで、右側にそのURLに例えば

https://footballapi.pulselive.com/football/stats/ranked/teams/wins?page=0&pageSize=20&compSeasons=42&comps=1&altIds=true

クリックして、きれいにフォーマットの応答を確認するために、[プレビュー]タブをクリックします。

あなたのプログラムでこれらの要求を模倣できると思います。同じリクエストヘッダーのいくつかを送信する必要があるかもしれません。なぜなら、ブラウザーでAPIに直接アクセスしようとするとブロックすると思われるからです。

関連する問題