深圳大数据培训
达内深圳宝安中心

136-3244-2201

热门课程

深圳达内:大数据在使用Scrapy框架时,如何应对普通的反爬机制——【深圳达内大数据培训】

  • 时间:2017-06-22
  • 发布:深圳大数据培训
  • 来源:达内新闻

深圳达内:大数据在使用Scrapy框架时,如何应对普通的反爬机制——【深圳达内大数据培训

1、header检验

最简单的反爬机制,即是查看HTTP恳求的Headers信息,包括User-Agent, Referer、Cookies等。

2、User-Agent

User-Agent是查看用户所用客户端的品种和版别,在Scrapy中,通常是在下载器中间件中进行处理。比如在setting.py中树立一个包括许多浏览器User-Agent的列表,然后新建一个random_user_agent文件:

class RandomUserAgentMiddleware(object):
    @classmethod
    defprocess_request(cls, request, spider):
        ua = random.choice(spider.settings['USER_AGENT_LIST'])
        if ua:
            request.headers.setdefault('User-Agent', ua)

这样就能够在每次恳求中,随机选取一个实在浏览器的User-Agent。

3、Referer

Referer是查看此恳求由哪里来,通常能够做图像的盗链判断。在Scrapy中,假如某个页面url是经过之前爬取的页面获取到,Scrapy会主动把之前爬取的页面url作为Referfer。也能够经过上面的方法自个界说Referfer字段。

4、Cookies

网站可能会检查Cookie中session_id的运用次数,假如超越约束,就触发反爬战略。所以能够在Scrapy中设置 COOKIES_ENABLED = False 让恳求不带Cookies。

也有网站强行敞开Cookis,这时就要费事一点了。能够另写一个简单的爬虫,守时向方针网站发送不带Cookies的恳求,获取响应中Set-cookie字段信息并保留。爬取网页时,把存储起来的Cookies带入Headers中。

5、X-Forwarded-For

在恳求头中增加X-Forwarded-For字段,将自个申明为一个通明的署理服务器,一些网站对署理服务器会手软一些。

X-Forwarded-For头通常格局如下:

X-Forwarded-For: client1, proxy1, proxy2

这儿将client1,proxy1设置为随机IP地址,把自个的恳求伪装成署理的随机IP产生的恳求。

但是因为X-Forwarded-For能够随意篡改,许多网站并不会信赖这个值。

想知道更多关于IT行业的信息吗?想远远不如行动,行动起来,一起加入达内,一起进入IT行业,跟着达内的脚步,一起走进如今的互联网信息时代,带给你不一样的色彩生活——【深圳大数据培训

深圳达内

上一篇:深圳达内:大数据中的Scrapy框架的主体和各个组件的意义——【深圳达内大数据培训班】
下一篇:深圳达内:大数据中在使用Scrapy时,怎么限制IP的请求数量——【深圳达内大数据培训】

深圳达内:大数据如何促进用户活跃并产生价值——【深圳达内大数据培训】

深圳达内培训:大数据的数据量——【深圳达内大数据培训】

深圳达内培训:大数据的数据结构和可变性——【深圳达内大数据培训】

深圳达内:大数据中在使用Scrapy时,怎么限制IP的请求数量——【深圳达内大数据培训】

选择城市和中心
贵州省

广西省

海南省

台湾