[爬虫与反爬虫] 用 Python 分析 20 万场吃鸡数据

文章目录

前言

在充斥着互联网的时代,凡是你眼睛可以看见的网页,就可以肆无忌惮的盘它。
如:用 Python 分析 20 万场吃鸡数据 得出0杀吃鸡堪比10杀!

官方说法定义它为是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,即网络爬虫。
而写这篇文章的目的在于对目前所学的一个总结。

爬虫

在了解爬虫之前需要知道

抓包工具的使用:fiddler与charles二选一

攻防

爬虫的原理在于模拟用户请求去访问一个网页,然后把数据拉取下来。

而在拉取的过程中会遇到各种反爬虫限制,比如常见的反爬虫限制

  1. 通过分析用户请求的header限制
  2. ip访问过于频繁限制
  3. 返回动态页面而不是接口数据包(如某宝)

对于爬虫来说,可以很方便的获取别人辛辛苦苦收集的数据,然后加以解析成为自己的数据,但是因此会增加被爬网站的压力,更有甚者,开启多线程直接撸的,因此开发者会针对性的进行反爬虫限制。

[爬虫与反爬虫] 用 Python 分析 20 万场吃鸡数据

作为技术人员来讲,爬虫虽好,但是要善用爬虫,慎用爬虫,不要侵权

实现

爬虫的实现原理了解后,那么实现方式可以有很多张,在此介绍最火的python爬虫

如上介绍的用python分析20万场吃鸡是如何实现的呢?其原理就是拉取一个人的战绩,然后通过这个人的战绩获取队友的openid,然后在根据队友的openid获取其战绩,再获取队友的队友的openid,如此无限循环!!

接下来我们来实现一个简单的无限循环爬取数据:百度百科词条抓取,逻辑图如下

[爬虫与反爬虫] 用 Python 分析 20 万场吃鸡数据

需要使用到python库的有:urllib抓取数据、BeautifulSoup解析html

代码地址:gihub地址