http://www.basketball-reference.com/boxscores/201112250DAL.htmlからスクレイピングされたレギュラーシーズンのチームのすべてのゲームのデータを取得しようとしています。他のすべてのデータ ファーミング機能は正常に動作していますが、問題はスクレーパーのループにあります。これは、次のページの URL を取得するために使用したテスト コードです。これを使用して、チームがレギュラー シーズン中にプレーした 66 試合すべてからデータを取得できますが、このようにスクレイピングするには大量の入力が必要です。これを自動化するための最も簡単なソリューションは何でしょうか?
ありがとうございました!
URL = "http://www.basketball-reference.com/boxscores/201112250DAL.html"
html = urlopen(URL).read()
soup = BeautifulSoup(html)
def getLink(html, soup):
links = soup.findAll('a', attrs={'class': 'bold_text'})
if len(links) == 2:
a = links[0]
a = str(a)
a = a[37:51]
return a
if len(links) == 3:
a = links[1]
a = str(a)
a = a[37:51]
return a
if len(links) == 4:
a = links[3]
a = str(a)
a = a[37:51]
return a
print getLink(html, soup)
URL1 = "http://www.basketball-reference.com/boxscores" + getLink(html, soup) + "html"
print URL1
html1 = urlopen(URL1).read()
soup1 = BeautifulSoup(html1)
print getLink(html1, soup1)