今天写的文章是记录我从零开始学习Python的全过程。
在python中可以在方法中定义全局变量,是通过一个关键字global来实现的。
在python中的globals()方法可以返回一个包含全局范围内所有变量的字典,其中键是变量名,值为变量值。当然在python中还有其他方法也能实现相似功能。locals()方法:返回的是该作用域内所有变量的字典,说人话就是如果这个方法用在方法中就返回这个方法内所有变量的字典。如果用在全局中,返回的就是全局变量的字典。也就是locals方法包含上面globals方法,当然这个比喻不正确但是理解的时候可以这样去理解。
在python中其实有一个库用得非常多,就是urllib模块。其中urllib.request模块是用于操作url的库,其中的urlopen()方法可以用来访问浏览器,也就是实现在网页上爬取数据的功能。
urllib中包含多个模块:
urllib.request模块用来打开和读取url
urllib.error模块抛出异常
urllib.parse模块用来解析url
urllib.robotparser模块用来解析robots.txt文件
如下图所示:
其中urlopen()方法比较重要,方法中需要传的参数有url是一个字符串或是一个Request对象,而data必须是一个对象,用于给出要发送到服务器的附加数据。
下面通过学习例子一起学习一下如何使用这个方法在网页上下载数据,如下图所示:
首先通过import将urllib.request模块导入到工程中,然后用urlopen()方法把url打开。但是这个时候读取的数据其实都是乱码的,因为没有进行转码操作。
所以下面使用data=html.read().decode('utf-8')将网页中的数据读出来以后进行转码转成utf-8格式,再把读出来的数据打印出来进行查看。
以上就是一个爬取网页数据的学习小例子。
今天学习分享就介绍到这,下篇学习分享再见。
坚持学习注定会有收获。