几个问题:
微信QQ验证码滑动拼图真的能防盗防信息泄露吗?
外卖购物订宾馆真的是几百个人的好评才出现在你的推荐里么?
微博直播平台上的热搜热点话题大V互动是真实发生的吗?
浏览器关键字信息真的是想让你看到的?
举个例子
现在是12月底很多人都开始琢磨回家过年的车票机票了,就像《人在囧途》其实为了票而发愁的大有人在,那怎么还有卖黑票赚黄牛差价的?怎么还有抢票软件?
简单点说,帮助买票的不是黑票和软件,而是他们的背后有无数个“爬虫”在发挥着作用。
爬虫就好比探测机器一样,被使用者掌控去各种网站上漫步,它没有疲劳的各种点击、浏览、还能把你想要的信息传递回来,它也不是孤军奋战,比鸣人还厉害的影分身造就了成千上万的爬虫大军。
这里说一下身为一个合法公民该有的善恶是非还是很重要的
就拿出行来说,被爬最多的你知道是哪个网站么?
抢票软件和卖黑票的就相当于影分身爬虫去不断刷新12306网站的各种票,有票就买断再转拍,对于中国的春运等节日可以说是最大的哺乳动物迁徙了,这出行占比最高20.87%的流量也是冲着12306去的,对于12306来说爬虫就是恶意的
如果我想看个电影、弄个论文、下载个小说都可以用爬虫来实现
大型浏览器百度、谷歌、360的搜索引擎爬虫,每隔几天就对全网的网页扫一遍,提供大家查阅查找就是善意的
那图片验证码、滑动拼图、打码系统防的是什么?
没错,防的就是爬虫,不用抱怨每次验证有没有用,对于手动操作简单的一批,可12306不用奇葩验证码坑正常的买票消费者不行吗?答案:当然不行!据公开数据表明,12306过年前“最高逢时1天浏览量813亿次,1小时最高点击量59亿次” 这还是有验证码防护以后的数据,那拦截在外的爬虫有多少???
为什么会被爬?
1、黄牛技术党利用爬虫不断刷新票务接口,一旦出现便宜的票,先买断再说,拿亚航举例,规定拍下半小时或一小时不付款就自动回到票池,继续卖,黄牛们计算好时间,一秒不差的把票拍下,售后自动回池,再买断,如此循环,完美的中间商赚差价。(淘宝天猫活动特价00:00一元抢购根本不是普通人能参与的)
2、微博没人关注没粉,我就用爬虫大军疯狂输出,你看我有十几万的僵尸粉厉不厉害?那广告厂商乐不乐意投资我?我随随便便发个广告链接没人点击不重要,因为我已经得到广告费了,机器运作躺着数钱他不香吗。淘宝店铺排名靠前也是一样的。
3、过年家里群发红包、各种微博网站发红包,我咋就抢不到,下个红包提示软件?NoNoNo
爬虫大军顶上,给我抢!凭本事挣钱你有办法吗。
说回我们身为一个合法公民的基本道德问题
《网络安全法》中的几条司法解释:
未经授权爬取用户手机通讯录超过50条记录;未经授权抓取用户淘宝交易记录超过500条;未经授权读取用户运营商网站通话记录超过500条;未经授权读取用户公积金社保记录的超过50000条的。以上这些情况可以入刑。
技术有没有罪是由使用的人来决定的
当然我们的企业、公司、网站也是强大的母庸质疑,这只不过是一场没有硝烟的战争罢了
爬虫的基础是Python英文翻译是“蛇”,所以图标像是两条蛇的形状,爬虫就是一段程序,它会在网络上“自由”穿梭,拿到编写这段程序的人需要的数据。
就拿我的Start_Simple的博客举例,这里边有很多文本文字和很多超链接,当我们需要的时候,可能只是单纯的复制,然后粘贴到电脑里的文档里。浏览器的工作过程就是
【用户 → 浏览器 → 服务器 → 浏览器 → 用户】
当我们在浏览器中输入一个网址,也叫做URL(Uniform Resource Locator),然后浏览器就会去存储放置这个网址资源文件的服务器获取这个网址的内容,这个过程就叫做「请求」(Request)。当服务器收到了我们的「请求」之后,它会把对应的网站数据返回给浏览器,这个过程叫做「响应」(Response)。
【请求数据 ⇌ 返回数据】
当你要去某个网站批量下载文章图片,使用浏览器的话,那么你就得打开浏览器,输入网址,或点击推送给你的超链接,页面加载完成后,找到你需要的信息,浏览或下载。
如果这个过程使用爬虫来处理,那么爬虫就会代替我们去服务器请求数据,然后爬虫帮我们去解析数据,然后按照我们设定好的规则批量把文章图片下载下来,存储到特定文件中。
【获取数据 → 解析数据 → 筛选数据 → 储存数据】
首先下载好Python语言环境,这里就不过多赘述了,官网下载就可以,不过最好不要下载最新版本的。
其次就是我们的requests库和BeautifulSoup库配置
方法是:在Mac电脑里打开终端软件(terminal),输入pip3 install requests,点击enter即可;Windows电脑里叫命令提示符(cmd),输入pip install requests 即可。
通过requests这个库,可以去获取网页的源代码,比如网页的html和文本内容图片下载等(像css这种引用的是暂时爬不到的),当然你也可以直接在网页上审查元素…不过爬虫入门前期就是这么鸡肋…
接下来试验下我们的第一个Python爬虫代码,就拿颜色代码表举例吧
import requests
res = requests.get('http://xinzhi.wenda.so.com/a/1522633804200358')
html=res.text
print(html)
这里运行的结果就是一个网页html,在原网页右键审查元素或查看网页源代码都可以实现
不过就是1+2=3和1+1+1=3结果一样方式却不一样,精通以后没准1+1+1=(√3)²=3都可以。。。修改到这里就差不多了,下篇文章再详细说明下属性和规则吧。