1.注册中国大学MOOC
2.选择北京理工大学嵩天老师的《Python网络爬虫与信息提取》MOOC课程
3.学习完成第0周至第4周的课程内容
4.提供图片或网站显示的学习进度,证明学习的过程。
5.写一篇不少于1000字的学习笔记,谈一下学习的体会和收获。
在老师的介绍下,我第一次接触了中国慕课。通过这四周的课程学习,我有了很多的收获,上了嵩天老师的《Python网络爬虫与信息提取》,我学到了许多东西。从开始只是老师说Python,爬虫,但是并没有太多的了解,在之前的学习中,也只是在表层上对它的了解。本课程介绍Python计算生态中最优秀的网络数据爬取和解析技术,具体讲授构建网络爬虫功能的两条重要技术路线:requests-bs4-re和Scrapy,所讲述内容广泛应用于Amazon、Google、PayPal、Twitter等国际知名公司。课程内容是进入大数据处理、数据挖掘、以数据为中心人工智能领域的必备实践基础。通用网络爬虫又叫全网爬虫,也就是网络爬虫爬取的目标资源在全网中。这种爬虫所爬取的目标数据是巨大的,并且爬取的范围也是很大的,是一种很典型的海量数据,所以对爬取的性能要求是非常高的,主要应用于大型搜索引擎中。 聚焦网络爬虫:也叫主题爬虫,是按照预先定义好的主题有选择性的进行网页抓取的一种爬虫,这种爬虫也就是我们平时所用的爬虫。 增量式爬虫:这种爬虫只爬取页面更新的地方,而未改变的地方则不更新。所以大多数时候都是新页面 深层网络爬虫:这种爬虫可以爬取深层页面。就是比较深层次的东西。
在第一周的课程中,介绍了第三方库Requests库,我学习了七个主要的方法
request.request()构造一个请求,支撑以下各方法的基础
request.get() 获取HTML网页的主要方法,对应于HTTP的GET
request.head()获取HTML网页头信息的方法,对应于HTTP的HEAD
request.post()向HTML网页提交POST请求的方法,对应于HTTP的POST
request.put()向HTML网页提交PUT请求的方法,对应于HTTP的PUT
request.patch()向HTML网页提交局部修改请求的方法,对应于HTTP的PATCH
request.delete()向HTML网页提交删除请求的方法,对应于HTTP的DELETE
通过学习让我知道了request库是同步请求,也就是从发出请求到收到响应,这样可以节省我们大量的工作时间,完全的满足HTTP的测试需求。
在第二周的课程中,学习了Beautiful Soup库。学习了它的基本元素如:Tag,Name,Attributes,NavigableString,Comment。通过学习了解到HTML的基本格式是树形结构。之后我还了解到了scrapy框架,它是一个快速功能强大的网络爬虫框架。常用的命令有:startproject创建一个新工程;genspider创建一个爬虫;settings获得爬虫配置信息;crawl运行一个爬虫;list列出工程中的所有爬虫;shell启动URL调试命令行;scrapy是一种具有持续爬取,商业服务,高可靠性的功能和特点,而且是Python语言里最好的爬虫框架,可具备千万级URL爬取管理与部署,是一种爬虫能力很强的框架,具备企业级专业爬虫的扩展性,可以很好的在企业中进行使用。
在这几周的课程学习中,让我对网络数据爬取和网页解析的基本能力有了一个详细的梳理,从Requests自动爬取HTML页面自动网络请求提交——Robots.txt网络爬虫排除标准——Beautiful Soup解析HTML页面→Re正则表达式详解提取页面关键信息→scrapy框架。从requests库到scrapy框架的学习,让我意识到了Python的学习是一个漫长的过程,包含了许许多多的知识点,需要掌握的东西也很多,也让我感受到了爬虫在我们的日常生活中的重要性,现如今是互联网的时代,而网络爬虫已经成为自动获取互联网数据的一种主要方式,Python对于我们学习和工作都起到了很重要的作用,大大的降低了我们的时间,更快更好的对信息进行提取。通过这次课程的学习,使我受益匪浅。接下来我会继续对Python网络爬虫与信息提取这门课程的学习,在未来有更好的发展。