20201123 2020-2021-2 《python程序设计》实验三报告
课程:《Python程序设计》
班级:2011
姓名:晏鹏捷
学号:20201123
实验教师:王志强
实验日期:2021年6月29日
必修/选修:公选课
一、实验内容
Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全
本次实验:爬虫豆瓣上关于搜索“张紫宁”的前三十条内容
二、实验要求
(1)程序能运行,功能丰富(需求提交源代码,并建议录制程序运行的视频)
(2)综合实践报告,要体现实验分析、设计、实现过程、结果等信息,格式规范,逻辑清晰,结构合理
(3)在实践报告中,需要对全课进行总结,并写课程感想体会、意见和建议等
三、实验过程
1、搭建环境
建库requests和lxml
此时requests下出现一条红线,按“Alt+Enter”,选择“install package requests”,进行安装
安装成功所示
“lxml”操作方式同“requests”,完成后如图
2、获取网页源代码
网页地址:https://www.douban.com/search?cat=1003&q=%E5%BC%A0%E7%B4%AB%E5%AE%81
3、获取目标数据
打开目标网页
点击鼠标右键点击审查元素
定位网页内容,代码标蓝区域在相同搜索内容中也标蓝,点击右键“复制”“复制x path”
得到下图,附带代码解释
查看代码,进行代码完善
此时代码只包含了一条选中内容
试运行完整代码,未成功,结果如下
进行网页搜索错误后修改代码,寻找并添加headers
运行结果如下
四、遇到问题和解决过程
错误:打漏了“//*”,小细节修改
未添加防止反爬机制函数def,进行添加
五、感悟思考
1、一直对python和Java充满兴趣,想深入学习应用。虽然作为大一新生刚接触程序设计,但基本的语言还是能够掌握的,特别是python相对来说更加简明快捷,更容易理解,编写时也相对顺手方便。很荣幸遇到王老师引导python入门,不是单纯的概念讲解和理论知识灌输,而是推荐我们边听边跟着打,不仅加深记忆,也能更快抓住要点。
2、四次实验报告其实在课上的讲解不多,更多的是自己在网上查找资料进行学习编写,而且网上的代码总会有一些小错误,即使我们使用也需要自己修改运行,这样我们也不会轻松完成作业,大大锻炼我的自学能力和debug能力,学会发现了很多的程序错误语言,例如本次的“invalid expression”等,为以后我们自己编写运行程序积累知识
3、在实验过程中,如果不够细心或者知识点掌握不牢固的话,会遇到许多的小错误需要修改,因此会花费不少的时间和精力。本人的耐心其实原本是没有很好的,但是经过这么多次的实验,能够沉稳的面对每一次运行时出现的错误并修改,而不是最开始的崩溃和急躁,所以我也学会了,要细心和耐心地学会程序编写。
六、 参考资料
https://blog.csdn.net/weiweiweiweia/article/details/87833704
https://docs.python-requests.org/zh_CN/latest/user/quickstart.html
https://blog.csdn.net/IT_XF/article/details/82184585
https://www.cnblogs.com/itworkers/p/13469527.html
https://blog.csdn.net/lm3758/article/details/82911636