【Python3.4.3】Scrapy1.2.0禁止重定向的解决方法

来源:赵克立博客 分类: Python 标签:网络爬虫Scrapy发布时间:2016-12-05 19:08:55最后更新:2016-12-06 11:21:19浏览:15562
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
更新时间:
2016-12-06 11:21:19
温馨提示:
学无止境,技术类文章有它的时效性,请留意文章更新时间,如发现内容有误请留言指出,防止别人"踩坑",我会及时更新文章

使用scrapy抓取内容的时候如果页面中有下面重定向的代码,scrapy就会去另一个页面,如下代码

第一种

重定向方法是在返回头里添加301重定向,如下php代码

//设置地址被永久的重定向 301
header('HTTP/1.1 301 Moved Permanently');
header('location:www.xxx.com');

禁止这种重定向的方法是在项目设置文件(setting.py)中添加下面代码

REDIRECT_ENABLED = False


第二种

是直接在页面里添加重定向代码,如下

<meta http-equiv="refresh" content="3.0;url=http://www.xxxx.pw">

采集中会出现如下所示重定向提示

blob.png

禁止这种重定向的方法是在设置文件(setting.py)中添加下面代码(关键是里面的那个注释掉的代码)

DOWNLOADER_MIDDLEWARES_BASE = {
    'scrapy.contrib.downloadermiddleware.robotstxt.RobotsTxtMiddleware': 100,
    'scrapy.contrib.downloadermiddleware.httpauth.HttpAuthMiddleware': 300,
    'scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware': 400,
    'scrapy.contrib.downloadermiddleware.retry.RetryMiddleware': 500,
    'scrapy.contrib.downloadermiddleware.defaultheaders.DefaultHeadersMiddleware': 550,
    #'scrapy.contrib.downloadermiddleware.redirect.RedirectMiddleware': 600,
    'scrapy.contrib.downloadermiddleware.cookies.CookiesMiddleware': 700,
    'scrapy.contrib.downloadermiddleware.httpproxy.HttpProxyMiddleware': 750,
    'scrapy.contrib.downloadermiddleware.httpcompression.HttpCompressionMiddleware': 800,
    'scrapy.contrib.downloadermiddleware.stats.DownloaderStats': 850,
    'scrapy.contrib.downloadermiddleware.httpcache.HttpCacheMiddleware': 900,
}



微信号:kelicom QQ群:215861553 紧急求助须知
Win32/PHP/JS/Android/Python