前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一步步编写自己的PHP爬取代理IP项目(一)

一步步编写自己的PHP爬取代理IP项目(一)

作者头像
NateHuang
发布2019-03-12 17:25:52
5840
发布2019-03-12 17:25:52
举报
文章被收录于专栏:开发经验记录开发经验记录

第一章节主要给大家普及一下爬虫的概念以及相关的知识,让大家对后面的学习打下扎实的基础。如果你是有经验的开发者,完全可以跳过第一章进入第二章的学习了。

这个项目主要围绕两大核心点展开:

1. PHP爬虫 2. 代理IP

咱们先讲讲什么是爬虫,简单来讲,爬虫就是一个探测机器,它的基本操作就是模拟人的行为去各个网站溜达,点点按钮,查查数据,或者把看到的信息背回来。就像一只虫子在一幢楼里不知疲倦地爬来爬去。

而我们最常见,用的最多的爬虫就是:百度。

百度就是利用这种爬虫技术:每天放出无数爬虫到各个网站,把他们的信息抓回来,等着你去搜索。

还有各种类型的抢票软件,每一个爬虫都帮助你不断刷新 12306 网站的火车余票。一旦发现有票,就马上买下来。

随着时代的发展,人们发现并不是所有的爬虫都像百度、抢票软件这种帮助到我们的生活,也有许多非法入侵的爬虫,这些爬虫不仅帮助不到我们,甚至会让我们的许多信息泄露。

人们十分憎恨这种爬虫,于是这就诞生了另一门技术,反爬虫。

话说有一天,小明想去电影院看电影,但是不知道看哪一部电影好,于是他想从多个网站爬取一些影评来让自己更好的抉择看什么电影。于是小明写了标准的爬虫(基于HttpClient库),不断地遍历某站的电影下面的影评页面,根据 Html 分析电影名字存进自己的数据库。

但是电影网站的工作人员小红却不乐意了,你用爬虫把我们的影评爬走了,那谁还上我们网站啊,我们怎么卖广告盈利啊。小红发现某个时间段请求量陡增,分析日志发现都是 IP(X.X.X.X)这个用户,并且 useragent 还是 JavaClient1.6 ,基于这两点判断非人类后直接在Nginx 服务器上封杀。

小明发现自己的影评只爬了三分之一就被封了,于是也针对性的变换了下策略,每爬半个小时就换一个IP代理

于是这就涉及到我们项目的第二点,代理IP了。这个词对于一些刚入门的新手们也许有点陌生,其实代理IP我们也可以理解为是一台代理服务器。

代理服务器是介于浏览器和Web服务器之间的一台服务器,当你通过代理服务器上网浏览时,浏览器不是直接到Web服务器去取回网页,而是向代理服务器发出请求,由代理服务器来取回浏览器所需要的信息,并传送给你的浏览器

这样,电影网站的小红就无法识别哪个IP是我们,而我们也可以顺利获取到自己想要的影评啦。(不过实际中还有更多的方法进行爬虫的攻防,这里就不一一讲述了)。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018/09/14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档