首页 > 技术文章 > Python:NBA球员得分数据排行爬虫

3-1415926535 2021-04-17 10:48 原文

第1步:从网络上获取球员数据排行网页内容(数据来源于虎扑)

第2步:提取网页内容中信息到合适的数据结构

第3步:输出结果

代码如下:

import requests
from bs4 import BeautifulSoup
import bs4
def getHTMLText(url):
    try:
        r=requests.get(url,timeout=30)
        r.raise_for_status()
        r.encoding=r.apparent_encoding
        r.text[:1000]
        return r.text
    except:
        return ""

def fillPlayList(plist,html):
    soup=BeautifulSoup(html,"html.parser")
    for tr in soup.find('tbody').children:
        if isinstance(tr,bs4.element.Tag):
            tds=tr('td')
            plist.append([tds[0].string,tds[1].string,tds[2].string])
    pass

def printPlayList(plist,num):
    for i in range(num):
        p=plist[i]
        print("{:^10}\t{:^15}\t{:^10}".format(p[0],p[1],p[2]))

def main():
    
    pinfo=[]
    url='http://nba.hupu.com/stats/players'
    html=getHTMLText(url)
    fillPlayList(pinfo,html)
    printPlayList(pinfo,21)
if __name__ == '__main__':
    main()

结果://库里也太帅了!!!

推荐阅读