A.spiders文件夹
B.item.py
C.pipeline.py
D.settings.py
---Ring off engine! ---Ring off engine! _________________
A.Finished with engine!
B.Engine rung off!
C.Engine stand by!
D.Got it.
---Finished with engine! ---Reply: Finished with engine! ---Report: __________.
A.Finished with engine
B.Engine finished
C.\
D.Well
从使用者的角度看,搜索引擎(Search Engine)系统提供了一个网页界面,让其通过浏览器提交一个词语(或短语),然后很快返回一个可能和用户输入内容相关的信息列表。该列表中的每一条目至少包括标题、摘要和
A.关键词 B.URL C.页面等级 D.相关度评价
"Stand by an engine" means
A."prepare to stop the engine"
B."assemble an engine on its bedplate"
C."make an engine ready for starting"
D."dismantle an engine"
深圳市远望谷信息技术股份有限公司2月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1: scrapy分为几个组成部分?分别有什么作用?可用的回答 : 分为5个部分; 1. Spiders(爬虫类) 2. Scrapy Engine(引擎) 3. Scheduler(调度器) 4. Downloader(下载器) 5. Item Pipeline(处理管道) 具体来说: Spiders:开发者自定义的一个类,用来解析网页并抓取指定url返回的内容。 Scrapy Engine:控制整个系统的数据处理流程,并进行事务处理的触发。 Scheduler:接收Engine发出的requests,并将这些requests放入到处理列队中,以便之后engine需要时再提供。 Download:抓取网页信息提供给engine,进而转发至Spiders。 Item Pipeline:负责处理Spiders类提取之后的数据。 比如清理HTML数据、验证爬取的数据(检查item包含某些字段)、查重(并丢弃)、将爬取结果保存到数据库中 问题 Q2:谷歌的无头浏览器?可用的回答 : 无头浏览器即headless browser,是一种没有界面的浏览器。既然是浏览器那么浏览器该有的东西它都应该有,只是看不到界面而已。 Python中selenium模块中的PhantomJS即为无界面浏览器(无头浏览器):是基于QtWebkit的无头浏览器。 问题 Q3:Python中的docstring是什么?可用的回答 :Python文档字符串称为docstring,它是一种记录Python函数,模块和类的方法。可以通过内置方法_doc_获取问题 Q4:python提供的内置类型是什么?可用的回答 : 可变类型的内置类型: List Sets Dictionaries 不可变的内置类型: Strings Tuples Numbers 问题 Q5:Python中的lambda是什么?可用的回答 :它是一个单独的表达式匿名函数,通常用作内联函数。问题 Q6:请解释或描述一下Django的架构?可用的回答 : 对于Django框架遵循MVC设计,并且有一个专有名词:MVT M全拼为Model,与MVC中的M功能相同,负责数据处理,内嵌了ORM框架 V全拼为View,与MVC中的C功能相同,接收HttpRequest,业务处理,返回HttpResponse T全拼为Template,与MVC中的V功能相同,负责封装构造要返回的html,内嵌了模板引擎 问题 Q7:请用代码简答实现stack?可用的回答 : stack的实现代码(使用python内置的list),实现起来是非常的简单,就是list的一些常用操作 class Stack(object): def _init_(self): self.stack = def push(self, value): # 进栈 self.stack.append(value) def pop(self): #出栈 if self.stack: self.stack.pop() else: raise LookupError(stack is empty!) def is_empty(self): # 如果栈为空 return bool(self.stack) def top(self): #取出目前stack中最新的元素 return self.stack-1 问题 Q8:说一下Django,MIDDLEWARES中间件的作用?可用的回答 : 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出。 问题 Q9:谈谈你对面向对象的理解?可用的回答 : 在我理解,面向对象是向现实世界模型的自然延伸,这是一种“万物皆对象”的编程思想。 在现实生活中的任何 物体都可以归为一类事物,而每一个个体都是一类事物的实例。 面向对象的编程是以对象为中心,以消息为驱 动,所以程序=对象+消息。 面向对象有三大特性,封装、继承和多态。 封装就是将一类事物的属性和行为抽象成一个类,使其属性私有化,行为公开化, 提高了数据的隐秘性的同时,使代码模块化。这样做使得代码的复用性更高。 继承则是进一步将一类事物共有的属性和行为抽象成一个父类,而每一个子类是一个特殊的父类-有父类的行为和属性,也有自己特有的行为和属性。 这样做扩展了已存在的代码块,进一步提高了代码的复用性。 如果说封装和继承是为了使代码重用,那么多态则是为了实现接口重用。 多态的一大作用就是为了解耦-为了解除父子类继承的耦合度。 如果说继承中父子类的关系式IS-A的关系,那么接口和实现类之之间的关系式 HAS-A。 简单来说,多态就是允许父类引用(或接口)指向子类(或实现类)对象。很多的设计模式都是基于面向对象的多态性设计的。 总结一下,如果说封装和继承是面向对象的基础,那么多态则是面向对象最精髓的理论。掌握多态必先了解接口,只有充分理解接口才能更好的应用多态。 问题 Q10:说一说redis-scrapy中redis的作用?可用的回答 : 它是将scrapy框架中Scheduler替换为redis数据库,实现队列管理共享。 优点: 可以充分利用多台机器的带宽; 可以充分利用多台机器的IP地址。 算法题面试官常问到的一些
---()! ---Engine dead slow astern!
---Stand by engine! ---Stand by engine!()
---Ring off engine! ---Ring off engine! ()
---Finished with engine! ---Reply: Finished with engine! ---Report: ().