第3次作业-MOOC学习笔记:Python网络爬虫与信息提取

1.注册中国大学MOOC

 

 2.选择北京理工大学嵩天老师的《Python网络爬虫与信息提取》MOOC课程

第3次作业-MOOC学习笔记:Python网络爬虫与信息提取_第1张图片

 

3.学习完成第0周至第4周的课程内容,并完成各周作业

第3次作业-MOOC学习笔记:Python网络爬虫与信息提取_第2张图片

 

 4.提供图片或网站显示的学习进度,证明学习的过程。

第3次作业-MOOC学习笔记:Python网络爬虫与信息提取_第3张图片

5.写一篇不少于1000字的学习笔记,谈一下学习的体会和收获。

这门课程介绍Python计算生态中最优秀的网络数据爬取和解析技术,具体讲授构建网络爬虫功能的两条重要技术路线:requests-bs4-re和Scrapy,课程内容是进入大数据处理、数据挖掘、以数据为中心人工智能领域的必备实践基础。教学内容包括:Python第三方库Requests,讲解通过HTTP/HTTPS协议自动从互联网获取数据并向其提交请求的方法;Python第三方库Beautiful Soup,讲解从所爬取HTML页面中解析完整Web信息的方法;Python标准库Re,讲解从所爬取HTML页面中提取关键信息的方法;python第三方库Scrapy,介绍通过网络爬虫框架构造专业网络爬虫的基本方法。

在第0周的课程学习中,嵩天老师向我们介绍了许多优秀的python的第三方库和框架,同时也介绍了几种常用的编译器。同时也告诉大家,没有最合适的编译器,只有最适合自己的编译器,也希望我们找到最适合自己的,而不是看别人最喜欢用哪个。

在第1周的课程学习中,首先我们学习了Requests库的安装、它的七个主要方法、HTTP协议对资源的操作、Response对象属性、Requests库的六种异常、学习操作了五个实例练习和了解了网络爬虫的尺寸,避免踩雷。在Response对象属性理解中,要注意区分:

request:爬虫请求request对象         response:爬虫返回的内容          r.encoding 从http header中猜测的响应内容的编码方式 。如果header中不存在charset,则认为编码为ISO-8859-1,这个编码不能解析中文                           r.apparent_encoding 从内容中分析出的响应内容编码方式(备选编码方式)。     从网页内容中推断编码方式,更加准确一些,当encoding不能解析正确编码方式时,采用这个。

在第2周的学习中,我学习到的是BeautifulSoup库的使用方法,这个库又叫“ 美味的汤 ” 它通过解析HTML标签来格式化和组织复杂的网页信息,用简单的python对象为使用者展现xml结构信息。使用这个库时,给我的感受是非常震惊的,它可以直接爬取网站的HTML代码,这非常的神奇,同时,它可以爬取淘宝中的产品信息,这非常有趣。同时,我知道了Beautiful Soup库是解析、遍历、维护“标签树的功能。它有四种解析器:bs4的HTML解析器、lxml的HTML解析器、lxml的XML解析器、html5lib的解析器。

在第3周的学习中,我学习了正则表达式re库,re库是python的标准库,正则表达式是用来简洁表达一组字符串的表达式。它使用一组特定的操作符来表示英文,数字,特殊符号还有取值范围等的约束条件。对于一些生活中常用到的字符串如邮编,手机号,IP地址等,可以使用正则表达式来匹配这些特定的字符串。re库采用raw string类型表示正则表达式,表示形式为:r'text'。当一个正则表达式有多种匹配形式时,Re库默认采用贪婪匹配,即输出匹配最长的子串。如果我们想要输出最短的子串,那么就需要用到最小匹配操作符来达到我们想要的结果。这周老师介绍了两个实例:"淘宝商品比价定向爬虫"和“股票数据定向爬虫”。但是由于淘宝网站改版了,需要登录淘宝网才能浏览商品,所以根据老师的代码去爬取网络会的不到想到的商品结果。

在第4周的学习中,我学习了Scrapy的安装及Scrapy爬虫框架的介绍和解析,“5+2”结构的目的和功能,及requests库和Scrapy爬虫的比较和Scrapy爬虫的常用命令。Scrapy命令行的格式和逻辑。老师还介绍了Scrapy爬虫的第一个实例,yield关键字的使用和Scrapy爬虫的基本使用:使用步骤,数据类型,提取信息的方法,CSS Selector的基本使用。老师还详细讲解了实例:股票数据Scrapy爬虫,功能、框架、实例的编写步骤、执行和优化。

通过观看嵩天老师的python课程视频,我对python'的网络爬虫有了初步的了解,简单的明白了Requests、Beautiful Soup、Re库的相关知识及使用,Scrapy框架的原理和解析及基本使用。老师也通过实际案例的形式让我们理解的更简单透彻,也让我对python网络爬虫产生了更浓厚的兴趣,希望自己能更上一层楼。

你可能感兴趣的:(第3次作业-MOOC学习笔记:Python网络爬虫与信息提取)