Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 新增面经-爬虫系 #3

Merged
merged 2 commits into from
Aug 22, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions 后端/201801-唯品会爬虫工程师(Java)-范忠钊.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
201801-唯品会爬虫工程师(Java)-范忠钊
===
面试背景:mori师兄内推
面试时间:约1个小时
面试规格:面试*2
因为是部门内推的所以也没有笔试,部门又缺人,所以这次面试大概也没什么参考价值...(逃

---

#### 一面-部门主管面
- 简单自我介绍
- 平时写爬虫的流程?
- 简历上的项目用的是Python,我们用的是Java,你能做吗?
- synchronized volatile干嘛用的
- Linux部署过项目吗,用什么作为服务器?(这里讲了Minecraft Server端的部署)
- 了解过MQ?(我:没有)
- 会Spring吗?(我:会)

一面结束,觉得已经凉了

#### 二面
- 讲一下你了解的Python的web框架(我:???,说了Tornado)
- 那Tornado对比其他有什么优点,你为什么要用它,优点底层怎么实现的?(我:MMP,自己给自己挖坑,说了coroutine和asyncio,说了Tornado的IOLoop,这里讲了大概20分钟,最后面试官说其实我也不懂.....)
- 那你讲讲Django(我:???)
- Java实现单例的两个关键字?(synchronized volatile)

二面结束,感觉凉透了

### 总结
然后就进了....二面面试官是个很搞的人,专门问一些觉得你不懂的东西,这次面试从技术上来说压力并不大,可能是中途有提到部落的原因,毕竟部落师兄内推的,知道是部落的会好说话挺多,面试自己评价很一般,只是碰巧部门需要一个会Spring又会爬虫又会Java同时Linux有点基础的人所以才侥幸进了..





51 changes: 51 additions & 0 deletions 后端/201801-数沃科技爬虫工程师(Python)-范忠钊.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
201801-数沃科技爬虫工程师(Python)-范忠钊
===
面试背景:小公司试水,没有很好的参考价值
面试时间:约3个小时
面试规格:笔试*1,面试*2


---

#### 笔试
- 笔试毫无亮点,都是些简单的HTML基础和Python基础


#### 一面
- 简单自我介绍
- 讲一下网页加载顺序?
- 平时写爬虫的流程?从分析请求到代码怎么走
- 听说过反爬?常见的反爬策略?怎么避免?
- TCP三次握手和四次挥手过程?
- 怎么抓手机的包?(Fiddler)
- 遇到过的最难爬取的网站?最后怎么解决的?(谷歌人机验证,至今无法解决)

一面结束,内心毫无波动

#### 二面
- 简单自我介绍
- 用过Python什么框架写过爬虫?(这里我说了Scrapy)
- 那简单讲解一下怎么理解的Scrapy的middleware
- 会翻墙吗?(我:???,这里我讲了GAE,面试官可能没听过也有点懵就没问了)
- Python实现单例的几种方式?
- 讲一下你会的Linux操作
- 简单的SQL查询
- 滑动验证怎么破解(Selenium)
- 现在抓到几百万条数据在记事本中,怎么用Python快速去重,性能瓶颈在哪?(Python的sets,磁盘IO)
- 会用前端框架吗?(我:???,这里讲了只会一点Vue)
- 机器学习了解多少?(这里说了机器视觉和OCR)
- 用机器学习都做过什么?(GAN生成动漫头像的小demo)
- 为什么大三就出来找实习?
- 分布式爬虫应该注意的问题?(并不会,慌得一笔)
- ICMP有应答,TCP连接终止最有可能的原因?(不确定,答了TCP回程ban)
- 怎么保证UDP的可靠性?(UDT,但是我了解不多,只讲了大概)

二面结束,感觉有点懵逼,我到底面的是什么岗位。。

### 总结
emmm不好说大小公司的差别,最后是HR聊人生意思一下,并没有特别注意的地方,感觉作为试水而言没有什么收获,面试问得比较杂,也不问项目,大概是认为爬虫做不了什么成型的项目,也没问在校学习经历。虽然觉得两面下来并不难但是却很慌。





58 changes: 58 additions & 0 deletions 后端/201807-数说故事爬虫工程师-范忠钊.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
201807-数说故事爬虫工程师-范忠钊
===
面试背景:从唯品离职咸鱼半个月后觉得要再去试试
面试时间:约2个小时
面试规格:笔试*1,面试*3

---
####笔试
没有特别出彩的地方,略过
- 有道题是问redis数据结构,要求越细越好(然而并不会
#### 一面
- 简单自我介绍
- 问简历上的项目细节
- 怎么做增量抓取(日期,站点哈希)
- 怎么从一千亿篇文章里找包含某个关键词的文章?(ES)
- 对ES了解多少?(只讲了概念性的东西就被打断)
- 说一下传输层协议(刚想说TCP面试官就补一句TCP和UDP就别说了,只好讲KCP)
- 网页渲染过程?
- 从输入网址到得到结果的整个网络过程?

一面结束,没啥感觉

#### 二面
- Linux a用户起了几个进程 b用户怎么杀?(ps -u)
- 遇到过什么有意思的反爬,怎么解决?(天眼查,字体解析)
- 了解过什么开源项目?(有点多...)

二面结束,一脸懵逼

#### 三面
- 除了Python和Java还会什么语言?(Lua)
- 讲讲Lua有什么特点你觉得有意思?(协程)
- 用Lua做过什么?(没成型的游戏)
- HTTP请求头的各个参数代表什么意思
- 学习方法?
- 读过什么技术书籍
- HashMap HashTable ConcurrentHashMap对比
- Python2和Python3对比
- SSL握手过程
- 设计模式?
- 前端了解多少?
- 倾向于JQuery还是Vue?(觉得是在钓鱼就答了这两个没有可比性吧..)
- redis数据淘汰策略
- 线上机器down了怎么排错?
- Python迭代器和生成器
- Python AOP?
- Python 协程?(yield)

三面结束


### 总结
感觉是三次面试里最有收获的一次,和面试官相谈甚欢...最后指出了一些Linux和redis的问题中不足的地方