python 爬虫库比较_爬虫常用库介绍

@

urllib

Urllib是 python 内置的库,在 Python 这个内置的 Urllib 库中有这么 4 个模块

request:request模块是我们用的比较多的,就是用它来发起请求,所以我们重点说说这个模块

error:error模块就是当我们在使用 request 模块遇到错了,就可以用它来进行异常处理

parse:parse模块就是用来解析我们的 URL 地址的,比如解析域名地址啦,URL指定的目录等

robotparser:这个用的就比较少了,它就是用来解析网站的 robot.txt

加群:456926667,获取更多学习资料、练手项目,以及学习氛围

了解了 urllib 之后

我们就可以用 python 代码来模拟请求了

Requests

Requests这个库比我们上次说的 urllib 可是要牛逼一丢丢的,毕竟 Requests 是在 urllib 的基础上搞出来的。通过它我们可以用更少的代码模拟浏览器操作。

对于不是 python 的内置库,我们需要安装一下,直接使用 pip 安装

pip install requests

一行代码GET请求

r = requests.get('https://www.sina.com.cn/')

一行代码post请求

r = requests.post('https://www.sina.com.cn/', data = {'key':'value'})

假装自己是浏览器

>>> url = 'https://www.sina.com.cn/'

>>> headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3704.400 QQBrowser/10.4.3620.400'}

>>> r = requests.get(url, headers=headers)

获取服务器响应文本内容

>>> import requests

>>> r = requests.get('https://www.sina.com.cn/')

>>> r.text

BeautifulSoup

利用正则表达式去提取信息太特么麻烦了

有没有什么别的方式更方便过滤我们想要的内容啊

emmmm~

你还别说还真有有一个高效的网页解析库它的名字叫做

BeautifulSoup

它是一个可以从 HTML 或 XML 文件中提取数据的 Python 库

首先我们要安装一下这个库

pip install beautifulsoup4

beautifulsoup支持不同的解析器

比如

对 HTML 的解析

对 XML 的解析

对 HTML5 的解析

一般情况下我们用的比较多的是 lxml 解析器,我们先来使用一个例子让你体验一下beautifulsoup的一些常用的方法

先安装一下

pip install beautifulsoup4

pip install lxml

接着将 html 的源代码传给BeautifulSoup

此时此刻就不需要自己写正则匹配了

我们要做的就是从这个对象直接获取我们要的内容,获取标题的内容

比如我们有这样一段HTML代码

接着将 html 的源代码传给BeautifulSoup,此时此刻就不需要自己写正则匹配了,我们要做的就是从这个对象直接获取我们要的内容获取标题的内容

然后我们可以获取标签内容,链接内容以及文本内容

除了find方法之外,如果你对css比较熟悉也可以使用 select 方法

selenium

什么是 selenium?其实它就是一个自动化测试工具,支持各种主流的浏览器,遇到了 python,selenium 变成了爬虫利器我们先来安装一下

pip install selenium

接着我们来尝试一下代码

我们发现自动弹出了一个Chrome浏览器窗口

这就是 selenium 的魅力

我们来看下我们刚刚写的代码

就这样完成了一次自动的百度搜索

当我们使用驱动打开了一个页面,这时候其实没什么鸟用,因为我们要对那些元素进行操作

就像刚刚我们要获取输入框然后输入一些内容还有获取按钮点击什么的,selenium 提供了挺多方法给我们获取的,当我们要在页面中获取一个元素的时候可以使用这些方法。

想要在页面获取多个元素呢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值