Python网络爬虫技巧小总结,静态、动态网页轻松爬取数据

Stephenzsky 2018-09-07

很多人学用python,用得最多的还是各类爬虫脚本:有写过抓代理本机验证的脚本,有写过自动收邮件的脚本,还有写过简单的验证码识别的脚本,那么我们今天就来总结下python爬虫抓站的一些实用技巧。

Python网络爬虫技巧小总结,静态、动态网页轻松爬取数据

静态网页

对于静态网页的爬虫不用多说大家也都知道,因为爬取静态网页非常的简单,只要用requests直接把html爬取下来然后用正则表达式匹配就可以了。

Python网络爬虫技巧小总结,静态、动态网页轻松爬取数据

动态网页

相对于静态网页的简单,但是动态网页的就会相对而而言会复杂一下,而且现在互联网的发展速度,动态网页是最多的,静态网页是比较少的,不过他有张良计,我有过墙梯。

动态网页的http请求分为两种形式:

Get方法和post方法

  • Get方法:比如说我们在浏览器上输入一个网络地址,就是发起一个Get方法的请求。这种网络地址就是URL。
  • Post方法:在爬虫中不常见,故不详细介绍

如果知道一个网站的请求是形式,熟练使用F12开发者工具,里面查看network就可以了。

看一下案例

Python网络爬虫技巧小总结,静态、动态网页轻松爬取数据

当然了,并不是所有的网页都是靠发送请求来得到数据的,也有非发送数据的动态网页。

对于这样的网站,我们一般是用selenium来做模拟浏览器的行为,可以直接获取浏览器渲染后的结果。不过selenium的速度比较慢。

具体案例如下:

Python网络爬虫技巧小总结,静态、动态网页轻松爬取数据

所以无论网页是静态网页还是动态网页都是方法爬取的,当然了,很多网站是需要登录和识别验证码、反爬等,无论网站出什么样的措施都是有应对方法,关键在于你会不会。

相关推荐