课程:《Python程序设计》
班级: 2031
姓名: 邓子啸
学号:20203117
实验教师:王志强
实验日期:2021年5月24日
必修/选修: 公选课
1.实验内容
Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全等。
2.实验过程及结果
结合学长所分享的爬虫经验和老师分享文章,综合运用多模块,体现多功能
首先导入requests、BeautifulSoup、lsml、csv、re模块,发送网络请求,通过requests添加headers进行伪装
url是用一个链接,headers是用来做浏览器代理的内容
把指定网页作为BeautifulSoup解析对象,输出soup的类型,以文本内容输出html
除此之外,导入CSV模块、创建一个CSV文件对象、读取CSV文件
正则表达式中可以使用 .*?
来进行匹配信息,没有加括号时可以去掉不一样的信息,不需要提取出来,加括号 (.*?)
可以提取出括号内的内容
通过使用re.sub匹配数字
我们使用xpath时,也必须先对网页进行 lxml
库中的 etree
解析,把它变为特有的树状形式,才能通过它进行节点定位
当我们提取标签内的文本时,需要在复制到的xpath后面加上 /text()
,告诉它我们需要提取的内容是一个标签呈现的数据,如《肖申克的救赎》。
<span class="title">肖申克的救赎</span>
每一个链接都是在标签内的,通常放在src=" "
或者href=" "
之中,提取链接时,需要在复制到的xpath后面加上/@href
, 指定提取链接。
2021bestipython/pythondzx20203117 - Gitee.com
3. 实验过程中遇到的问题和解决过程
4.其他(感悟、思考等)
由衷感谢王老师的辛勤教学!我学到了关于pycharm的基础知识,解决了我的很多疑惑。
从搭建python开发环境,到了解数字类型、字符串类型、算术运算符、赋值运算符等语言基础;从序列:列表、元组、字典、集合的学习,到字符串与正则表达式,字符串的大小写转换、分割与合并、截取和拼接;从socket编程技术:分为服务器端和客户端,到现在的网络爬虫技术。可以说是受益匪浅!实验二中我设计了计算器,实验三做的是socket编程技术,印象深刻,受益匪浅!本次实验利用了模块requests进行爬虫,反爬虫头文件、BeautifulSoup解析、csv文件等内容综合运用,以实现多功能,但仍有很多不足,将不断改进。
建议:课堂上可以适当增多与学生交流,让每次完成作业较好的同学分享学习经验。