scrapy实战
主要介绍python的爬虫框架scrapy的使用以及在使用过程中遇到的问题
shengjk1
零基础转码,头部大厂程序员,努力构建 通俗易懂的、好玩的编程语言教程。关注我,习得转码经验!翱翔在编程的海洋里!只学习最值得学的内容!
展开
-
总述
首先呢,非常感谢看官来看笨小二学python爬虫这系列。基于python2,若有python3会特加注明小二,其实很早就听说python很好玩很有意思,但无奈小二一直都是靠java起家的,一时半会也难以专业去玩python,但后来小二跳槽了,跳到了一家大部分都会python的公司,小二发现了一种怪现象,会python的人会排斥java开源的软件,自从上周开始,小二终于有点闲了,也抱着对python的原创 2017-06-10 11:41:24 · 321 阅读 · 0 评论 -
scrapy之原理
最近小二换了一家新公司,刚入公司,让小二做了一些爬虫方面的工作,经过小二的调研,最后决定用scraly来进行实现。虽然scrapy的中文资料不少,但成体系的很少,小二就在此总结一下,以供后来者提供方便scrapy原理 Scrapy Engine 引擎负责控制数据流在系统中所有组件中流动,并在相应动作发生时触发事件。 详细内容查看下面的数据流(Data Flow)部分。调度器(原创 2017-11-22 13:09:52 · 731 阅读 · 0 评论 -
scrapy之user-agent池
常见的反爬策略有很多,今天我们一起跟随小省开始,ua的反爬之旅,咳咳咳,敲黑板喽!直接上代码: 首先建立中间件#!/usr/bin/env python# -*- coding: utf-8 -*-# Create by shengjk1 on 2017/11/8import randomfrom scrapy.contrib.downloadermiddleware.useragent原创 2017-11-22 13:16:38 · 4576 阅读 · 0 评论 -
scrapy之ip池
反爬策略有很多,最常用的也就是ip池,下面让我们一起跟着小省开始ip池之旅吧直接上代码: 由于我们的ip池是自己维护在数据库中的,所以会有查库这一说#!/usr/bin/env python# -*- coding: utf-8 -*-# Create by shengjk1 on 2017/11/6from screptile import poolfrom utilspider.dp原创 2017-11-22 13:25:45 · 5221 阅读 · 0 评论 -
scrapy 传参
当爬虫上线时难免会希望动态传参,下面跟着小二一起学传参吧,喽喽喽!直接上代码: 自己写的spiderclass MWMSpider(scrapy.Spider): name = 'mwm_flowers_spider' def __init__(self, **kwargs): self.city_name = kwargs['city_name']原创 2017-11-22 14:01:54 · 702 阅读 · 0 评论 -
scrapy之其他
1.日志 $为注释 $LOG_ENABLED default: TrueLOG_ENABLED = True LOG_LEVEL = ‘INFO’ $LOG_FILE = ‘./logs/booksisbn.log’2.失败重试$为注释 RETRY_ENABLED=True RetrywhenproxiesfailRETRYTIMES=3Retry when proxies fail原创 2017-11-22 14:15:10 · 355 阅读 · 0 评论