2017-01-10 7 views
0

Webページ(フットボール約評価)PythonでHTMLサイトから特定のデータを取得できません:は(3.6)

http://www.fantagazzetta.com/voti-serie-a

私が試したもの:

How to extract text from html page?

私は、彼の答えでユーザーJRodDynamiteによって提供された(そして最後には、resを印刷し、の場合はを実行しません)。だから私は、コードのちょうどこの部分(私は推測)を編集するために必要な:各テーブルの内容を印刷するには

res = soup.findAll("article", {"class": "listingItem"}) 

を私は答えは思った:

res = soup.findAll("table", {"class": "table"}) 

しかし、それは何も印刷していません。だから私はあなたの助けが必要です:私はそのWebページ(プレーヤーの名前と評価)からデータを収集したいと思いますが、私はこの時点で固執しています。 ありがとう

答えて

1

BeautifulSoupやリクエストなどはJavascriptを実行しないため、JS経由で配信またはレンダリングされるデータは利用できません。

import dryscrape 
from bs4 import BeautifulSoup 

sess = dryscrape.Session() 
sess.visit('http://www.fantagazzetta.com/voti-serie-a#') 
s = BeautifulSoup(sess.body()) 
for a in s.find_all('table', {'class': 'table'}): 
    print(a.text) 

Dryscrapeのインストール:JavaScriptが

は、あなたがそうのようdryscrapeで試すことができますページをレンダリング

sudo pip install dryscrape 
+0

あなたは 'OPと他人のためにdryscrape'を記述することができます。ドキュメントへのリンクもいいかもしれません。 – furas

+0

@furasは十分ですか?編集しても構いません。 – MYGz

+0

非常に良いと便利な答え、ありがとう – furas