网站大量收购独家精品文档,联系QQ:2885784924

面试妥了!2020爬虫面试题目合集.doc

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
介绍爬虫 1.爬虫:自动的抓取互联网上信息的脚本文件。 2.爬虫可以解决的问题: (1)解决冷启动问题 (2)搜索引擎的根基:做搜索引擎少不了爬虫 (3)建立知识图谱,帮助建立机器学习知识图谱 (4)可以制作各种商品的比价软件,趋势分析。 3.爬虫分类 (1)通用爬虫:搜索引擎的主要组成,作用就是将互联网的上页面整体的爬取下来之后,保存到本地。 (2)聚焦爬虫:聚焦爬虫在实施网页抓取时会对内容进行处理筛选,尽量保证只抓取与需求相关的网页信息。 通用爬虫和聚焦爬虫的区别:聚焦爬虫在实施网页抓取时会对内容进行处理筛选,尽量保证只抓取与需求相关的网页信息。 4.爬虫遵循的协议:robot协议 定义:网络爬虫排除标准。 作用:告诉搜索引擎哪里可以爬,哪里不可以爬。 5.通用爬虫工作流程 (1)抓取网页:通过搜索引擎将待爬取的url加入到通用爬虫的url队列中,进行网页内容的爬取 (2)数据存储:将爬取下来的网页保存到本地,这个过程会有一定的去重操作,如果某个网页的内 容大部分内容都会重复,搜索引擎可能不会保存。 (3)预处理:提取文字,中文分词,消除噪音(比如版权声明文字,导航条,广告等)。 (4)设置网站排名,为用户提供服务。 6.一些反爬及其应对措施 ( 1)通过user-agent来判断是否是爬虫。 解决方案:可以通过伪装请求头中的user-agent来解决。若user-agent被检测到,可以找大量的user-agent,放入列表,然后进行更换 (2)将IP进行封杀。 解决方案:可以通过代理来伪装IP。 (3)通过访问频率来判断是否是一个爬虫。 解决方案:可以通过设置请求间隔,和爬取间隔。 (4)当一定时间内的总请求数超过上限,弹出验证码。 解决方案:对于简单的验证码图片可以使用tesseract来处理,对于复杂的可以去打码平台。 (5)通过JS来获取页面数据。 解决方案:可以使用selenium+phantomjs来加载JS获取数据。 介绍搜索引擎 1.搜索引擎的主要组成 通用爬虫:就是将互联网的上页面整体的爬取下来之后,保存到本地。 通用爬虫要想爬取网页,需要网站的url.但是搜索引擎是可以搜索所有网页的。那么通用爬虫url就要涉及到所有网页,这个‘所有’是如何做到的: 新网站向搜索引擎主动提交网址; 在其他网站上设置新网站外链; 搜索引擎和DNS解析服务商(如DNSPod等)合作,新网站域名将被迅速抓取。 2.搜索引擎的工作流程(通用爬虫的工作流程) (1)抓取网页:通过搜索引擎将待爬取的URL加入到通用爬虫的URL队列中,进行网页内容的爬取。 (2)数据存储:将爬取下来的网页保存到本地,这个过程会有一定的去重操作,如果某个网页的内 容大部分内容都会重复,搜索引擎可能不会保存。 (3)预处理:提取文字,中文分词,消除噪音(比如版权声明文字,导航条,广告等)。 (4)设置网站排名,为用户提供服务。 3.搜索引擎的局限性 (1)搜索引擎只能爬取原网页,但是页面90%内容都是无用的。 (2)搜索引擎不能满足不同行业,不同人的特定需求。 (3)通用搜索引擎只能爬取文字信息,不能对音频、图片等进行爬取。 (4)只能基于关键字查询,无法基于语义查询。 介绍HTTP 网络七层协议: 1.HTTP协议特点 HTTP协议是超文本传输协议; HTTP协议是一个应用层协议; 无连接:每次请求都是独立的; 无状态,表示客户端每次请求都不能记录请求状态,就是两条请求直接不可通信。 2.HTTP工作过程 地址进行DNS解析,将URL解析出对应的内容 封装HTTP请求数据包 封装成TCP包,建立TCP连接(TCP的三次握手) 客户端发送请求 服务器接收请求,发送响应 客户端接收到响应,进行页面渲染 服务器关闭TCP连接(TCP的四次挥手) 3.HTTP协议和HTTPS协议的区别 HTTP协议是使用明文数据传输的网络协议,明文传输会让用户存在一个非常大的安全隐患。端口80 HTTPS协议可以理解为HTTP协议的安全升级版,就是在HTTP的基础上增加了数据加密。端口443 HTTPS协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议要比HTTP协议安全。 4.HTTP通信 HTTP通信由两部分组成:客户端请求消息与服务器响应消息。 5.关于响应常见的响应码 6.客户端请求(Get和Post区别) (1)组成:请求行、请求头部、空行、请求数据四个部分组成 (2)请求方法Get/Post (3)Get和Post的区别 GET和POST本质上就是TCP链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同。 (4)常见的请求头 User-Agent:客户端请求标识。 Accept:传输文件类型。

文档评论(0)

jason + 关注
实名认证
内容提供者

jason

1亿VIP精品文档

相关文档