python面试题——爬虫相关
1、接触过几种爬虫模块
urllib、requests这两种爬虫模块。
2、robots协议是什么?
它就是一个防君子不防小人的协议,网站有一些数据不想被爬虫程序爬取,可以编写robots协议文件,明确指明哪些内容可以爬取哪些不可以爬取。
requests模块中并没有使用硬性的语法对该协议进行生效操作。
在Scrapy框架中在settings.py文件中使用了硬性语法对该协议进行了生效。
3、如何处理验证码?
使用三方的打码平台比如:云打码平台、打码兔。可以用来处理验证码。
4、掌握几种数据解析的方式?
re、xpath(最常用)、bs4(python独有)
5、如何爬取动态加载的页面数据?
selenium; ajax:抓包工具抓取异步发起的请求(url)
6、接触过哪些反爬机制?如何处理?
robots协议、UA、封IP、验证码、动态数据加载、数据加密、token
处理:配置不遵守robots协议、伪装User-Agent、代理IP更换、打码平台对验证码识别、selenium处理或者使用抓包工具去抓取动态加载的AJAX请求数据包、按照已知的各种加密方式进行解密、去前台页面进行token值的查找手动放入请求携带的参数中。
7、在Scrapy中接触过几种爬虫类?
Spider、CrawlSpider(链接提取器和规则解析器)、RedisCrawlSpider、RedisSpider
8、如果实现分布式流程?
必须要通过scrapy-redis组件来实现,可以由RedisCrawlSpider、RedisSpider这两种类分别实现。
9、简述 requests模块的作用及基本使用?
2、requests模块参数,data与json参数的区别?
97、简述 beautifulsoup模块的作用及基本使用?
98、简述 seleninu模块的作用及基本使用?
99、scrapy框架中各组件的工作流程?
100、在scrapy框架中如何设置代理(两种方法)?
101、scrapy框架中如何实现大文件的下载?
102、scrapy中如何实现限速?
103、scrapy中如何实现暂定爬虫?
104、scrapy中如何进行自定制命令?
105、scrapy中如何实现的记录爬虫的深度?
106、scrapy中的pipelines工作原理?
107、scrapy的pipelines如何丢弃一个item对象?
108、简述scrapy中爬虫中间件和下载中间件的作用?
109、scrapy-redis组件的作用?
110、scrapy-redis组件中如何实现的任务的去重?
111、scrapy-redis的调度器如何实现任务的深度优先和广度优先?
112、简述 vitualenv 及应用场景?
113、简述 pipreqs 及应用场景?
114、在Python中使用过什么代码检查工具?
115、简述 saltstack、ansible、fabric、puppet工具的作用?
python面试题——爬虫相关的更多相关文章
- Python静态网页爬虫相关知识
想要开发一个简单的Python爬虫案例,并在Python3以上的环境下运行,那么需要掌握哪些知识才能完成一个简单的Python爬虫呢? 爬虫的架构实现 爬虫包括调度器,管理器,解析器,下载器和输出器. ...
- Python—安装跟爬虫相关的包
舆情爬虫分析:硬件: 4台服务器,分别放redis.python爬虫.mysql和 kafka四大板块.软件:1. mysql2. redis #leap1 /usr/bin/redis- ...
- python面试题-django相关
1.中间件 中间件一般做认证或批量请求处理,django中的中间件,其实是一个类,在请求和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法, 如请求过来 执行process_re ...
- Python面试题-数据库相关
1.mysql如何做分页 mysql数据库做分页用limit关键字,它后面跟两个参数startIndex和pageSize 2.mysql引擎有哪些 innodb和myisam两个引擎,两者区别是 i ...
- c#代码 天气接口 一分钟搞懂你的博客为什么没人看 看完python这段爬虫代码,java流泪了c#沉默了 图片二进制转换与存入数据库相关 C#7.0--引用返回值和引用局部变量 JS直接调用C#后台方法(ajax调用) Linq To Json SqlServer 递归查询
天气预报的程序.程序并不难. 看到这个需求第一个想法就是只要找到合适天气预报接口一切都是小意思,说干就干,立马跟学生沟通价格. 不过谈报价的过程中,差点没让我一口老血喷键盘上,话说我们程序猿的人 ...
- Mac os 下 python爬虫相关的库和软件的安装
由于最近正在放暑假,所以就自己开始学习python中有关爬虫的技术,因为发现其中需要安装许多库与软件所以就在这里记录一下以避免大家在安装时遇到一些不必要的坑. 一. 相关软件的安装: 1. h ...
- Python面试题整理-更新中
几个链接: 编程零基础应当如何开始学习 Python ? - 路人甲的回答 网易云课堂上有哪些值得推荐的 Python 教程? - 路人甲的回答 怎么用最短时间高效而踏实地学习 Python? - 路 ...
- 震惊!几道Python 理论面试题,Python面试题No18
本面试题题库,由公号:非本科程序员 整理发布 第1题: 简述解释型和编译型编程语言? 解释型语言编写的程序不需要编译,在执行的时候,专门有一个解释器能够将VB语言翻译成机器语言,每个语句都是执行的时候 ...
- 面试前赶紧看了5道Python Web面试题,Python面试题No17
目录 本面试题题库,由公号:非本科程序员 整理发布 第1题: Flask中的请求上下文和应用上下文是什么? 第2题:django中间件的使用? 第3题: django开发中数据做过什么优化? 第4题: ...
随机推荐
- MySQL之常用命令
前言 在说MySQL命令之前,需要介绍一些navicat:navicat是一套快速.可靠并且价格相宜的数据库管理工具,它的出现简化了数据库的管理,降低了管理成本,提高了对数据库的管理效率.Navica ...
- 【火车出栈】ZOJ - 2603 Railroad Sort
好久没写递归了,怕手生再来练练手. 题意:车轨上有上图所示的n个中转栈,现有2n个列车,给出列车初始编号序列.列车从最右边驶入车轨,并且列车只能从右向左移动,要求给出列车中转操作序列,使列车经过这n个 ...
- 昂达v981平板刷机教程连接
http://tieba.baidu.com/p/3721193574 http://www.ondabbs.cn/forum.php?mod=viewthread&tid=65393 htt ...
- Blocks poj 区间dp
Some of you may have played a game called 'Blocks'. There are n blocks in a row, each box has a colo ...
- DRF教程7-token认证
Authentication 认证是将一个传入的请求和一组标识凭据相关联的机制,比如请求过来的用户,或者用户登录时携带的token. 然后权限策略就能使用这些凭据来决定是否允许这个请求. REST框架 ...
- C语言中类型限定符
通常用类型和存储类别来描述一个变量. C90还增加了两个属性:恒常性(constancy).易变性(volatility): 分别用关键字const和volatile来声明. 这两个关键字创建的类型是 ...
- POJ 3281 Dining ( 最大流 && 建图 )
题意 : 有 N 头牛,John 可以制作 F 种食物和 D 种饮料, 然后接下来有 N 行,每行代表一头牛的喜好==>开头两个数 Fi 和 Di 表示这头牛喜欢 Fi 种食物, Di 种饮料 ...
- Go语言基础环境配置(windows)
一.基础软件包安装 需要安装go环境包.git.IDE(VScode),安装包见下图: 1.1 安装go windows环境直接双击安装包安装即可,在cmd窗口输入go,结果如下图所示即表示安装成功: ...
- Office 下载地址
Office Professional Plus 2013 64位简体中文版文件名: cn_office_professional_plus_2013_x64_dvd_1134006.iso语言: C ...
- 1.centos7 安装zookeeper
1.安装jdk 1)查找jdk包: yum search java|grep jdk 2)安装: yum install -y java-1.8.0-openjdk.x86_64 2. 安装ZooKe ...