(一)实验内容
Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全等。
我要做的是用爬虫爬取酷狗音乐TOP500排行榜的歌曲,演唱歌手及歌曲时长。
(二)实验过程
(1)模块引入
(2)获得 HTML,并且构造一个请求头,有了请求头之后,服务器就会默认程序是通过浏览器访问的请求头中的信息其实在网页按F12后,点network,然后f5刷新一下,看主要文件在右边显示的信息里一般是有index字样的文件,信息在user-agent中
(3)判断网页返回的状态码,200代表连接成功。状态码是在程序出错时,作为检测工具,可以用断点然后打印出来,判断连接网站时出现的错误
(4)爬取内容
(5)输出爬取到的内容
(6)获取主接口
(7)每过一秒,再次执行下一个网页,避免给服务器造成压力。
(三)实验结果
成功爬取酷狗音乐TOP500排行榜的歌曲,演唱歌手及歌曲时长。
(四)在华为云上运行
打开华为云服务器
登录winscp并将代码传上去
登录putty
用find / -name pip-*找到pip所在位置
进入pip所在位置
用python3 -m venv tutorial-env和source tutorial-env/bin/activate创建一个虚拟环境中把pip和运行venv模块作为一个脚本用的目录路径
退出到总文件夹并进入代码所在文件夹
执行代码
成功爬取排行榜
(五)实验过程中遇到的问题和解决过程
1.引入requests等模块失败
解决方法:将华为云中的python2更新为python3
2.下载python3后无法执行dnf
解决方法:更新pip
(六)课程感悟
上大学以前我从未接触过代码,对编程一窍不通,但我还是在舍友的忽悠下硬着头皮选了python。一直听说python很难,但庆幸的是王老师的教学水平很高,总是能将复杂晦涩抽象的东西简单化,每次在讲一个知识点的时候都现场写几行代码让我理解得更透彻。后来随着学习内容的深入,由于基础不够扎实我开始渐渐有些难以跟上老师教学的步伐了,在学习的过程中也遇到了各种各样的问题,好在老师和同学们都很耐心的为我解答。这一学期的python课程,总体来说收获很多,感谢王老师的辛苦教学。
人生苦短,我用python!