6

BeautifulSoup を使用してページから結果を取得しようとしています。

req_url = 'http://www.xscores.com/soccer/livescores/25-02'
request = requests.get(req_url)
content = request.content
soup = BeautifulSoup(content, "html.parser")
scores = soup.find_all('tr', {'style': 'height:18px;'}, limit=None)
print(len(scores))
>50

この以前の解決策を読みました: Beautiful Soup findAll はそれらをすべて見つけられず 、html.parser、lxml、および html5lib を試しましたが、どれも 50 を超える結果を返しませんでした。助言がありますか?

ありがとうございました

4

3 に答える 3

2

css-selectorクエリを使用してみてください。

scores = soup.select('#scoretable > tr[style*="height:18px;"]')
print(len(scores))

>>>613
于 2017-02-27T09:41:26.543 に答える
2

これを試して -

req_url = 'http://www.xscores.com/soccer/livescores/25-02'
request = requests.get(req_url)
html=request.text
soup = BeautifulSoup(html, "html5lib")
scoretable=soup.find('tbody',id='scoretable')
scores=scoretable.find_all('tr')
len(scores)
>617
于 2017-02-27T09:41:33.123 に答える