桃桃桃桃桃桃”
码龄7年
关注
提问 私信
  • 博客:50,250
    50,250
    总访问量
  • 10
    原创
  • 1,545,687
    排名
  • 30
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
  • 加入CSDN时间: 2018-05-21
博客简介:

了不起的水獭的博客

查看详细资料
个人成就
  • 获得39次点赞
  • 内容获得15次评论
  • 获得147次收藏
创作历程
  • 16篇
    2018年
成就勋章
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

python爬虫面试题

1.你写爬虫的时候都遇到过什么?反爬虫措施,你是怎么解决的?通过headers反爬虫; 基于用户行为的发爬虫:(同一IP短时间内访问的频率); 动态网页反爬虫(通过ajax请求数据,或者通过JavaScript生成);解决途径:对于基本网页的抓取可以自定义headers,将header随request一起发送(一般是User-Agent,Cookie) 使用IP代理池爬取或者降低...
原创
发布博客 2018.08.13 ·
7225 阅读 ·
25 点赞 ·
3 评论 ·
143 收藏

Scrapy框架的核心架构与执行流程

一.Scrapy的核心架构在学习Scrapy的过程中,时常需要添加各种功能,因此需要我们熟悉Scrapy的架构并取重写它的部分功能:  (1)Scrapy引擎(Engine):引擎是Scrapy架构的核心,负责数据和信号在组件间的传递。  (2)调度器(Scheduler):存储带爬取的网址,并确定网址的优先级,决定下一次爬取的网址。  (3)下载中间件(Downloader Mi...
转载
发布博客 2018.08.04 ·
939 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

常见的反爬虫策略以及反反爬虫策略

       爬虫是一种模拟浏览器对网站发起请求,获取数据的方法。简单的爬虫在抓取网站数据的时候,因为对网站访问过于频繁,给服务器造成过大的压力,容易使网站崩溃,因此网站维护者会通过一些手段避免爬虫的访问,以下是几种常见的反爬虫和反反爬虫策略:                                                             爬虫 网站 应...
原创
发布博客 2018.08.03 ·
8697 阅读 ·
9 点赞 ·
2 评论 ·
28 收藏

深度优先与广度优先

网站的树结构 深度优先算法和实现 广度优先算法和实现网站的树结构通过伯乐在线网站为例子:  并且我们通过访问伯乐在线也是可以发现,我们从任何一个子页面其实都是可以返回到首页,所以当我们爬取页面的数据的时候就会涉及到去重的问题,我们需要将爬过的url记录下来,我们将上图进行更改  在爬虫系统中,待抓取URL队列是很重要的一部分,待抓取URL队列中的URL以什...
转载
发布博客 2018.08.03 ·
276 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

布隆过滤器(bloom filiter)集成到redis中

布隆过滤器(Bloom Filter)详解 基本概念如果想判断一个元素是不是在一个集合里,一般想到的是将所有元素保存起来,然后通过比较确定。链表,树等等数据结构都是这种思路. 但是随着集合中元素的增加,我们需要的存储空间越来越大,检索速度也越来越慢。不过世界上还有一种叫作散列表(又叫哈希表,Hash table)的数据结构。它可以通过一个Hash函数将一个元素映射成一个位阵列(Bi...
转载
发布博客 2018.07.22 ·
1491 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Scrapy spider实例

当我们创建完项目之后,首先使用命令行创建一个spider:scrapy genspider spider名称 www.xxxx.comScrapy会自动在项目文件的spider下生产一个py文件,它继承了scrapy.Spider,模板主要的内容有以下几项: name: 用于区别Spider。 该名字必须是唯一的,您不可以为不同的Spider设定相同的名字。 start_...
原创
发布博客 2018.07.18 ·
817 阅读 ·
1 点赞 ·
1 评论 ·
3 收藏

常用CSS选择器

CSS选择器:参考手册                                                                                 常用的CSS选择器
转载
发布博客 2018.07.18 ·
139 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

xpath的用法

转载自:https://blog.csdn.net/u013332124/article/details/80621638一、xpath介绍XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。XPath 使用路径表达式在 XML 文档中进行导航 XPath 包含一个标准函数库 XPath 是 XSLT 中的主要元素 XPa...
转载
发布博客 2018.07.18 ·
3212 阅读 ·
1 点赞 ·
0 评论 ·
9 收藏

CrawlSpider类实现全站爬虫案例

Scrapy框架中分两类爬虫,Spider类和CrawlSpider类。该案例采用的是CrawlSpider类实现爬虫进行全站抓取。CrawlSpider是Spider的派生类,Spider类的设计原则是只爬取start_url列表中的网页,而CrawlSpider类定义了一些规则(rule)来提供跟进link的方便的机制,从爬取的网页中获取link并继续爬取。创建CrawlSpider模...
原创
发布博客 2018.07.18 ·
6585 阅读 ·
1 点赞 ·
0 评论 ·
18 收藏

常见的HTTP状态码(HTTP Status Code)说明

转载自:https://blog.csdn.net/dufufd/article/details/53112184作为一个互联网开发人员对于一些服务器返回的HTTP状态的意思都必须是了如指掌的,只有将这些状态码一一弄清楚,工作中遇到的各种问题才能够处理的得心应手。好了,下面就让我们来了解一下比较常见的HTTP状态码吧!2开头 (请求成功)表示成功处理了请求的状态代码。200   (成功...
转载
发布博客 2018.07.18 ·
835 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

selenium 实现模拟登录

selenium模拟登录:爬虫在爬取某些必须登录才能可见数据的网站是,可以使用selenium模拟浏览器登录请求,以下为模拟登录微博的源码:from selenium import webdriverfrom scrapy.selector import Selectorbrowser = webdriver.Chrome(executable_path="C:\Mycode\爬虫资源...
原创
发布博客 2018.07.18 ·
1392 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

scrapy的cookie禁用以及自动限速

cookie的禁用:在爬取不需要登入的页面是,cookie可能会成为网站检测爬虫的途径之一,所以一般会把cookie禁用,防止被反爬;禁用方法:在setting.py中,将COOKIES_ENABLED设定为False;而在爬取需要登入的页面是,cookie往往是发送登录信息的一种手段,所以可以在spider的py文件中重载custom_settings:custom_setti...
原创
发布博客 2018.07.18 ·
3696 阅读 ·
0 点赞 ·
2 评论 ·
3 收藏

云打码实现验证码识别

云打码官网:http://www.yundama.com/API接口:http://www.yundama.com/apidoc/YDM_SDK.html#DEMO以下验证码识别使用的”pythonHTTP“方法:1.注册开发者账号,进入开发者中心,点击”我的软件“→”添加新软件“,获取软件代码和通讯密钥;2.调用示例:import http.client, mimetype...
原创
发布博客 2018.07.18 ·
5708 阅读 ·
0 点赞 ·
4 评论 ·
1 收藏

scrapy IP代理池

免费的IP代理池采用的是西刺的高匿IP代理:http://www.xicidaili.com/nn/1.设置代理IP的方法: request.meta["proxy"] = “http://221.238.67.231:8081"2.爬取西刺网站的IP地址保存到MySql,并取出可用的ip:import requestsfrom scrapy.selector impo...
原创
发布博客 2018.07.17 ·
580 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

scrapy随机更换User-Agent

1.在setting中设置User-Agent默认值;2.将setting中DOWNLOADER_MIDDLEWARES默认的'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware':设为NONE;3.安装fake_useragent第三方库(用于生成随机User-Agent);4.并定义RANDOM_UA_TYPE=...
原创
发布博客 2018.07.17 ·
1555 阅读 ·
0 点赞 ·
1 评论 ·
2 收藏

scrapy 的暂停和重启

scrapy的爬虫在运行时,需要暂时停止运行,并在下一次从暂停的地方继续爬取的方法:1.打开cmd进入虚拟环境,cd到scrapy的main.py目录下;2.在cmd下输入以下命令scrapy crawl 爬虫名称 -s JOBDIR=保存进程的文件夹目录比如我要运行的spider的name为zhihu,文件夹目录是scrapy目录下的job_info/001(001表示这是一次...
原创
发布博客 2018.07.17 ·
7047 阅读 ·
0 点赞 ·
2 评论 ·
6 收藏
加载更多