[python3]nba球员数据爬虫
来源:互联网 发布:天下粮仓 知乎 编辑:程序博客网 时间:2024/04/30 07:19
爬取的数据为新浪nba数据库
方法是先爬取球员列表页面然后进入每个球员页面进行爬取,结果生成为csv
由于个人需求只爬取了16-17赛季数据,可通过修改正则表达式进行定制
代码如下:
import urllib.requestimport reimport csvmyUrl ="http://nba.sports.sina.com.cn/players.php?dpc=1"user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)' headers = { 'User-Agent' : user_agent } req = urllib.request.Request(myUrl, headers = headers) myResponse = urllib.request.urlopen(req)myPage = myResponse.read() #encode的作用是将unicode编码转换成其他编码的字符串 #decode的作用是将其他编码的字符串转换成unicode编码 unicodePage = myPage.decode("GB2312")#print(unicodePage)myItems = re.findall(' <a href=\'(.*?)\'>(.*?)</a>',unicodePage,re.S) items = [] for item in myItems: # item 中第一个是url # item 中第二个是球员姓名 try: memUrl="http://nba.sports.sina.com.cn/"+item[0] memName=item[1] newReq=urllib.request.Request(memUrl, headers = headers) newResponse = urllib.request.urlopen(newReq) newPage = newResponse.read() unicodeNewPage = newPage.decode("GB2312") memItems = re.findall('<tr bgcolor="#FFEFB6".*?16-17.*?</a></td>(.*?)</tr>',unicodeNewPage,re.S) j=[] # print(memItem[0].) j=re.findall("<td>(.*?)</td>",memItems[0],re.S) with open("nba.csv","a",newline="") as datacsv: csvwriter = csv.writer(datacsv,dialect = ("excel")) #csv文件插入一行数据,把下面列表中的每一项放入一个单元格(可以用循环插入多行) csvwriter.writerow([memName,j[0],j[1],j[2],j[3],j[4],j[5],j[6],j[7],j[8],j[9],j[10],j[11],j[12],j[13],j[14]]) except Exception as err: print(err) print(item[1])
0 0
- [python3]nba球员数据爬虫
- python爬虫实战——NBA球员基本数据
- python爬虫+数据分析之NBA球员LBJ13个赛季的数据分析
- 利用python爬虫技术获取每天每场的每位球员NBA数据以及每日范特西评分
- python爬虫抓包爬取NBA中文网近20年球员数据
- python简单框架实现爬取NBA球员数据
- 爬取虎扑NBA球员常规赛各项数据存储至MongoDB
- 爬取2016-2017赛季NBA球员的数据
- NBA球员版球鞋
- nba球员与三国武将
- NBA底层球员的活法
- 2013年NBA球员排名
- Python爬虫爬取NBA数据
- python 爬取新浪网站 NBA球员最近2个赛季库里前20场数据
- NBA球员力量训练方法!感受职业球员日常训练!
- NBA球员超逗的豪言壮语
- NBA史上薪水最高球员排行榜
- 如何下载NBA球员投篮信息
- 007.PHP生成随机字符串
- Android Fragment解析以及Fragment中碰到的各种坑
- 基于mini2440嵌入式linux上整合一套Domoticz智能家居系统(三)编译并安装cmake和git工具
- Win10下Android开发环境搭建
- Atitit 提升进度的大原则与方法 高层方法 attilax总结
- [python3]nba球员数据爬虫
- 【Python】多进程
- 浏览器标准模式和怪异模式
- LeetCode之Sum of Two Integers
- wdcp面板升级PHP7.0脚本
- 类欧几里得算法与推导
- Effective STL: 选择合适的容器
- JS画线
- Centos7中进程操作