20201116郑良奥-实验四python综合实践

2021/6/30 14:20:51

本文主要是介绍20201116郑良奥-实验四python综合实践,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程:《Python程序设计》
班级: 2011
姓名: 郑良奥
学号:20201116
实验教师:王志强
实验日期:2021年6月30日
必修/选修: 公选课

 

一、实验内容

Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全等。

本次实验内容:爬取nba20-21赛季常规赛得分榜前20名,并写入Excel表格中保存

 

二、实验过程及结果

1.获取网页内容

发起请求

r = requests.get(url, timeout=30)
 状态
r.raise_for_status()
 设置字符串
r.encoding = r.apparent_encoding
 获取文本内容
r.text[:1000]


2.获取想要的数据
打开网页虎扑体育-NBA球员得分数据排行 第1页 (hupu.com)
摁CTRL+shift+c选择元素进行检查,复制元素的slector。
def fillPlayList(plist, html):
     创建BeautifulSoup对象
    soup = BeautifulSoup(html, "html.parser")
     找到表格,拿到数据
    for tr in soup.find('tbody').children:
        if isinstance(tr, bs4.element.Tag):
             获取td标签
            tds = tr('td')
             获取标签里的内容
            plist.append([tds[0].string, tds[1].string, tds[2].string, tds[3].string])

3.将数据写入表格
打开表格
wb = openpyxl.Workbook()
ws = wb.active
 设置行数
r = 1
 定义存放数据的列表
p = []
 循环,把数据存入列表
for i in range(num):
    p.append(plist[i])

 循环写入表格
for line in p:
    for column in range(1, len(line) + 1):
        ws.cell(row=r, column=column).value = line[column - 1]
    r = r + 1
 保存数据到表格
wb.save('nba得分榜前20.xlsx')

4.定义主方法
pinfo = []
 网址
url = 'http://nba.hupu.com/stats/players'
 调用getHTMLText获取网页内容
html = getHTMLText(url)
 调用fillPlayList获取需要的数据
fillPlayList(pinfo, html)
 保存数据到表格,前20
savePlayList(pinfo, 21)

3.运行结果

4.将代码push到码云

失败了,建不了仓库了

三、学习心得

在这一个学期的学习中,我感受的了python这门语言独特的魅力,作为一门高级语言。近年来python在编程上的用处越来越广泛,也有越来越多的人开始学习python。与c语言相比,他的简洁和便利令人印象深刻,给了编程者很大的自由空间与方便,使代码得到了充分的简化。但是与c语言一样的是吗,要想学好python这门语言,也必须不停地敲代码,熟能生巧。

同时这门课程也锻炼的我的自学能力,就像王老师在第一节和最后一节课上反复说的那样“这门课学好了是自己努力学的好”,不只是这门课,大学里任意一门学科都需要同学们一定程度上的自学,这就要求我们充分利用自己的资源,还要合理安排自己的时间与计划。

最后还是要真诚地感谢老师一学期的精心指导,让我不仅学会了这一门课的知识,同时也教给了我平时学习的方法。


                   

这篇关于20201116郑良奥-实验四python综合实践的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程