python 网络爬虫之requests库和Re正则表达式

        这周学习了python网络爬虫,主要学了requests库,Beautiful Soup库和Re正则表达式的入门,也学习编写了几个简单的爬虫实例。

        网络服务器上的数据都是有产权归属的,网络爬虫获取数据后牟利是有可能带来法律风险的,查看Robots协议即可以知道哪些页面可以抓取,哪些不行,Robots协议保存在网站根目录下的robots.txt文件中。robots协议的基本语法如下:

```

User-agent:*

Disallow:/

```

#其中*是代表所有,/是表示根目录

        Robots协议是建议但不是约束性,可以不遵守,但是存在法律风险。

        其次要安装需要使用的第三方库,直接用pip install+库名这个命令即可安装,在写代码的时候直接import 库名导入就可以使用了。

爬取网页主要用到的是requests库,通用代码框架如下:

正则表达式是用来简洁表达一组字符串的表达式,比如一组字符串'PN','PYN','PYTN','PYTHN,'PYTHON'可以直接用一个正则表达式表示P(Y|YT|YTH|YTHO)?N,非常简洁。

正则表达式语法由字符和操作符构成,常用的操作符如下:

e.g.IP地址的正则表达式:

(([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5]).){3}([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5])

Re库的主要功能函数如下

e.g.   

这是搜索字符串中包含以1-9中任一数字开头,后面再有5位数字的子串,以列表形式返回

另外,Re库默认采用的时贪婪匹配,即输出匹配的最长子串,在操作符后增加?即可变成最小匹配

e.g.

你可能感兴趣的:(python 网络爬虫之requests库和Re正则表达式)