准备了一些简单的面试题

当了一次面试官,主要是面试爬虫岗位,具体涉及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容器与爬虫
相关推荐
阿钱真强道3 小时前
13 JetLinks MQTT:网关设备与网关子设备 - 温控设备场景
python·网络协议·harmonyos
我的xiaodoujiao3 小时前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 47--设置Selenium以无头模式运行代码
python·学习·selenium·测试工具·pytest
傻乐u兔4 小时前
C语言进阶————指针4
c语言·开发语言
大模型玩家七七4 小时前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
历程里程碑4 小时前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
牛奔5 小时前
Go 如何避免频繁抢占?
开发语言·后端·golang
寻星探路9 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly20240611 小时前
Bootstrap 警告框
开发语言
2601_9491465311 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧11 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言