您的位置: 首页 > 新闻资讯 > > 正文

如何防止别人爬取自己的网站?

发布时间:2020年12月28日 来源:互联网

    相较于爬虫技术,反爬虫实际上更复杂。目前许多互联网企业都会花大力气进行“反爬虫”,网络爬虫不但会占据过多的网站流量,导致有真正需求的用户没法进入网站,另外也有可能会导致网站关键数据的外泄等现象。网络爬虫遍布互联网的各个角落,因此网络爬虫有好处也有坏处,接下来介绍一下和网络爬虫一同诞生的反爬虫技术,如何才能防止别人爬取自己的网站?


image.png


    1、基于程序本身去防止爬取:作为爬虫程序,爬取行为是对页面的源文件爬取,如爬取静态页面的html代码,可以用jquery去模仿写html,这种方法伪装的页面就很难被爬取了,不过这种方法对程序员的要求很高。


    2、基于iptables和shell脚本:可以对nginx的access.log进行策略定义,例如定义在1分钟内并发连接数超过30个ip为非法,如ip不在白名单内,则加入iptables策略封掉,当然这种的缺点是会有“误伤”,策略细粒度越小就会有更多的“误伤”,细粒度大就会使效果变差,另外还有类似的第三方工具fail2ban,利用做filter和actor对一些有危害的操作记录或是封ip。但是对于某个特定的爬虫地址(例如网易、有道)的爬取行为拒绝也很难准确做到,因为你无法准确知道这些特定的爬虫ip地址。注意:建议不要用封ip条目的方式,iptables列表长度是65535时就会封满,服务器也就会死机。


    3.使用robots.txt文件:例如阻止所有的爬虫爬取,但是这种效果不是很明显。


    User-agent: *


    Disallow: /


    4.使用nginx的自带功能:通过对httpuseragent阻塞来实现,包括GET/POST方式的请求,以nginx为例,具体步骤如下:


    编辑nginx.conf


    拒绝以wget方式的httpuseragent,增加如下内容


    ## Block http user agent - wget ##


    if ($http_user_agent ~* (Wget) ) {


    return 403;


    }


    ## Block Software download user agents ##


    if ($http_user_agent ~* LWP::Simple|BBBike|wget) {


    return 403;


    平滑启动


    # /usr/local/nginx/sbin/nginx -s reload


    如何拒绝多种httpuseragent,内容如下:


    if ($http_user_agent ~ (agent1|agent2|Foo|Wget|Catall Spider|AcoiRobot) ) {


    return 403;


    }


    大小写敏感匹配


    ### 大小写敏感http user agent拒绝###


    if ($http_user_agent ~ (Catall Spider|AcoiRobot) ) {


    return 403;


    }


    ### 大小写不敏感http user agent拒绝###


    if ($http_user_agent ~* (foo|bar) ) {


    return 403;


    }


    注意语法:~*表示是大小写不敏感,~表示是大小写敏感


    }


    以上就是预防网站信息被别人爬取的一些方法,大量的爬取行为会对web服务器的性能有影响,所以一定要注重反爬虫措施。


相关文章内容简介

1 爬虫数据不可缺少是爬虫代理ip

    爬虫数据不可缺少的工具就是爬虫代理ip,爬虫数据大家都已经不再陌生,就是通过爬虫技术,对目标网站的数据爬取,这样可以根据目标网站的数据,来调整自己的工作。爬虫数据不可缺少的工具就是爬虫代理。    爬虫在抓取的数据的时候,速度会很快,正式因为爬虫的速度太快,可能会导致一个IP访问过于频繁,这时对方网站就会有反爬虫技术,直接被检测出来,出现验证或者直接封IP的情况。出现这种情况后,就给爬虫工作带来了很大的困扰。    这时爬虫代理就是尤为重要,代理可以隐藏真是的IP,让对方网站服务器认为是我们自己的真实请求。在爬取数据的过程中,可以使用爬虫代理不断更换IP,这样就不会出现IP被封的情况了,达到很好的爬取效果。    爬虫代理在选择的时候也要多多挑选,因为爬虫的特殊性,所以找到效果好、合适的代理才能更好的完成工作。万变ip代理海量IP在线,多城市IP覆盖,更换IP速度快,可用率高达97%,是爬虫工作人员的最佳选择。... [阅读全文]

2 自动化的爬虫代理ip是什么意思?

    自动化的爬虫代理ip是什么意思?如今很多人对于很多现代化的平台并不是十分信任,总觉得通过自己手动操作看到平台运行过程才能够更加放心。这种人虽然对工作更加负责,但是却更浪费时间。根据研究表明,人们在使用了万变代理ip资源之后,这种操作的速度明显比手动操作速度快了很多倍,节约了时间的同时还为工作创造更多的效益。    万变代理ip资源是代理资源的一种,它换高质量ip地址。和普通的爬虫代理平台相比,它的价格更适合普通大众,同时转化到了ip地址质量也更好。    万变代理ip资源的研发团队在研发的过程中,这已经无数次的测试了手动操作和自动操作之间的差别,得出的结果无一不是自动的更受人们欢迎。... [阅读全文]

推荐阅读

  1. 02

    2020-04

    高匿代理IP应用

    一般来说,每一大城市的营运商常有自身与众不同的 IP 段(通称DNS),承担全省所管范围之内的IP。全透明代理商代表手机客户端不清楚有服务器代理,但传送依然应用真正IP,它是沒有多实用

  2. 25

    2021-03

    用了代理ip爬虫采集效率反而更低?

    有使用代理ip爬虫采集经验的朋友都知道,原则上用代理ip可以提升爬虫效率,但是前提是选择优质的代理ip服务商,免费代理IP不仅有效连接率低,而且业务成功率也不高。这是为什么呢,今天

  3. 26

    2020-02

    使用代理ip软件要清除电脑浏览器的痕迹吗?

    对于一些网络用户来说,其实我们对代理软件的访问并不是很多,因为在日常上网的过程中,如果你有需要,我们会多选择VPN,所以你不知道什么是 IP代理 ,但是你知道VPN是怎么回事,但事实

  4. 21

    2019-12

    独享IP池有什么独特处?

    很多人觉得独享IP池价格比较贵,纷纷选择短效优质代理IP;有的人觉得独享IP池质量更好,速度更快,选择了独享IP池;还有一些人,觉得可以利用独享IP池建立一个全新的代理IP池,然后和几个

  5. 23

    2021-01

    如何确保我们的ip地址已被成功修改?

    当使用免费 代理ip 时,我们如何确保我们的 ip地址 已被成功修改?一般来说,人们可以通过以下三种方式进行简单的验证。

  6. 08

    2020-12

    pc端和移动端同样适用的代理ip有吗?

    关于网络 ip地址 切换的教程,如果你看过相关介绍,你就会知道使用 代理ip 软件其实是一种方便的改变方式。电脑客户端的用户,没有更换ip的软件,可以从万变ip代理 IP官网下载,安装在电脑

因为专业! 所以简单! 产品至上,价格实惠 是我们服务追求的宗旨

免费试用