014-活该你爬虫被封之Scrapy Ip代理中间件

栏目: 编程工具 · 发布时间: 6年前

内容简介:这是坚持技术写作计划(含翻译)的第14篇,定个小目标999,每周最少2篇。背景: 房租到期了。需求: 找到便宜,交通便利的房源,了解当前租房行情,便于砍价。

这是坚持技术写作计划(含翻译)的第14篇,定个小目标999,每周最少2篇。

背景: 房租到期了。

需求: 找到便宜,交通便利的房源,了解当前租房行情,便于砍价。

在爬取58,赶集,链家,安居客的数据时,被封是常事,基于此,fork并修改了两个库。用于抓取免费代理ip,用于支持爬取租房数据。

注意:租房网站的数据,大概率失真,仅做参考。

其中部分数据截图

014-活该你爬虫被封之Scrapy Ip代理中间件

本文只介绍Scrapy的ip代理中间件,不多讲如何爬取租房网站数据以及数据分析,后边可能会写。

获取代理ip

如果有付费的代理ip更好,如果没有的话,可以用我构建的 docker 镜像

docker run -p8765:8765 -d anjia0532/ipproxy-dockerfile

稍等2-5分钟,访问 http://${docker ip}:8765/ ,如果有值,则抓取代理ip成功。

scrapy-proxies-tool

安装

pip install scrapy-proxies-tool

配置

修改 Scrapy settings.py,源 repo 只支持从文件读取代理ip

# Retry many times since proxies often fail
RETRY_TIMES = 10
# Retry on most error codes since proxies fail for different reasons
RETRY_HTTP_CODES = [500, 503, 504, 400, 403, 404, 408]

DOWNLOADER_MIDDLEWARES = {
  'scrapy.downloadermiddlewares.retry.RetryMiddleware': 90,
  'scrapy_proxies.RandomProxy': 100,
  'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110,
}

PROXY_SETTINGS = {
  # Proxy list containing entries like
  # http://host1:port
  # http://username:password@host2:port
  # http://host3:port
  # ...
  # if PROXY_SETTINGS[from_proxies_server] = True , proxy_list is server address (ref https://github.com/qiyeboy/IPProxyPool and https://github.com/awolfly9/IPProxyTool )
  # Only support http(ref https://github.com/qiyeboy/IPProxyPool#%E5%8F%82%E6%95%B0)
  # list : ['http://localhost:8765?protocol=0'],
  'list':['/path/to/proxy/list.txt'],

  # disable proxy settings and  use real ip when all proxies are unusable
  'use_real_when_empty':False,
  'from_proxies_server':False,

  # If proxy mode is 2 uncomment this sentence :
  # 'custom_proxy': "http://host1:port",

  # Proxy mode
  # 0 = Every requests have different proxy
  # 1 = Take only one proxy from the list and assign it to every requests
  # 2 = Put a custom proxy to use in the settings
  'mode':0
}

可以通过爬取 http://myip.ipip.net/ 来判断代理ip是否生效。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

CSS禅意花园

CSS禅意花园

[美] Dave Shea、Molly E. Holzschlag / 陈黎夫、山崺颋 / 人民邮电出版社 / 2007-6 / 49.00元

这本书的作者是世界著名的网站设计师,书中的范例来自网站设计领域最著名的网站——CSS Zen Garden(CSS禅意花园)。全书分为两个主要部分。第1章为第一部分,讨论网站“CSS禅意花同”及其最基本的主题,包含正确的标记结构和灵活性规划等。第二部分包括6章,占据了书中的大部分篇幅。 每章剖析“CSS禅意花园”收录的6件设计作品,这些作品围绕一个主要的设计概念展开,如文字的使用等。通过探索......一起来看看 《CSS禅意花园》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具