准备了一些简单的面试题

当了一次面试官,主要是面试爬虫岗位,具体涉及scrapy爬虫框架和一些数据存储的小问题。具体的问题如下:

  1. scrapy框架如何将单机版爬虫改为分布式爬虫【使用scrapy_redis】,具体来讲需要修改哪几个组件的哪些具体部分
  2. Spider
    1. 如何设置监听redis队列
    2. 如何从redis内提取数据,并构造请求。介绍一下make_request_from_data函数的用法?
  3. settings.py
    1. 调度器 SCHEDULER
    2. redis链接 REDIS_URL
    3. 去重 DUPEFILTER_CLASS
  4. 我们有一批1900个key,用于爬虫使用。这些key调用上限为3000,而且有的时候部分key会失效,key的最大并发数为100。对于这一批key,你将如何设计用于分布式爬虫。请你给一个基于scrapy_redis的爬虫方案【具体可以从代理池的设计,维护,key的使用方面介绍】。【我们需要实时了解到每一个key的使用情况】
  5. 了解分布式消息队列rabbitmq/kafka吗?你有没有部署维护的经验?在使用过程中是如何确保消息不丢失【从消息的发布,消费两方面简单说说】?死信队列了解过吗?有没有使用消息队列实现过消息延迟/定时消费功能【要求一条数据在指定时间被消费】。有没有了解过rabbitmq的交换机,介绍一下kafka和rabbitmq队列的基础队列模式
  6. 熟悉js逆向吗?
  7. 有通过js逆向解决过反爬问题吗?有的话详细介绍一下
    1. 请求头参数加密
    2. 请求参数加密
    3. cookie加密
    4. 响应结果加密
    5. 滑块验证码了解吗?遇到滑块验证码如何解决?
  8. 在scrapy分布式爬虫中,如果有请求参数/请求头参数/cookie等是需要即时生成,如何设计参数生成器/参数使用?
  9. 了解过mongo集群/es集群吗?有没有部署维护过集群
  10. mongo在更新数据时如何提升效率?【如何更新】
  11. 如何存储碎片化数据?【千万级别小图片,数据会涉及转移与上传】
  12. 对于媒体数据如何存储?【.mp4/.mp3】
  13. 有没有开发/设计过爬虫监控项目?我们需要监控爬虫集群的请求速度,数据的入库速度,服务器的负载,爬虫的启停,如何实现?
  14. redis使用过嘛?
  15. 有没有在爬虫开发过程中使用redis实现某些功能,详细介绍一下?
  16. 使用过docker吗?
  17. 在哪些方面使用docker,简单介绍一下
  18. 有没有使用docker部署过爬虫?
  19. 有没有使用k8s管理过docker容器与爬虫
相关推荐
RoyLin6 分钟前
TypeScript设计模式:迭代器模式
javascript·后端·node.js
用户8356290780513 小时前
从手动编辑到代码生成:Python 助你高效创建 Word 文档
后端·python
侃侃_天下3 小时前
最终的信号类
开发语言·c++·算法
c8i3 小时前
python中类的基本结构、特殊属性于MRO理解
python
麦兜*3 小时前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud
麦兜*3 小时前
MongoDB 在物联网(IoT)中的应用:海量时序数据处理方案
java·数据库·spring boot·物联网·mongodb·spring
echoarts3 小时前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
liwulin05064 小时前
【ESP32-CAM】HELLO WORLD
python
Aomnitrix4 小时前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式
Doris_20234 小时前
Python条件判断语句 if、elif 、else
前端·后端·python