先说一下小弟背景:非科班出身,刚接触用 Pyhton 写爬虫两个月左右。 最近接到的任务是爬取淘宝商品列表上的信息,被各种反爬搞的焦头烂额,对于前端知识极度匮乏的我,终于体会到只有后端知识是远远不能成为一个合格的爬虫工程师,所以在此向各位大佬请教一条前端知识的学习路线。首先最起码能分析出对方的反爬手段,接着就是如何反反爬。老弟我在此先感谢大家的献言献计。
1
lynskylate 2019-01-28 22:30:20 +08:00 via Android 3
爬虫很难有好前途,天花板太低,干的活太杂,变化太频繁,很难有积累。一般公司爬虫框架都搭好了,你也很难去做架构,天天就是网站一遍去写解析脚本了。后端天天 crud 离业务好歹近,熟练了可以做业务方面的架构工作。
总之,爬虫初级可以做,熟练后以后建议转后端或者转风控。 |
2
lynskylate 2019-01-28 22:32:48 +08:00 via Android 1
另外爬虫和前端关系不大,更重要的是分析反爬策略,破解网络接口。
|
3
littleylv 2019-01-28 22:48:33 +08:00
歪个楼,我好像没听过“爬虫工程师”这个职位
|
4
noli 2019-01-29 00:08:12 +08:00 via iPhone
第一步,先忘掉爬虫工程师这个名词。第二步,成为一个软件工程师。
|
5
reus 2019-01-29 08:34:30 +08:00
低端工作,大佬才不会拿这个当工作
|
6
showecho 2019-01-29 08:48:19 +08:00
爬虫工程师?这种职位不是应该遮掩一下 至少换个名字吗?
|
7
keyakizaka46 OP |
8
aaa5838769 2019-01-29 09:28:19 +08:00
我觉得这个学会就行了- -,没必要深入吧- -
|
9
supervipcard 2019-01-29 09:44:12 +08:00
三个阶段(针对反爬)
1.伪造 Headers 发请求然后解析,会处理 Cookie 2.解决账号和 IP 封禁,简单的验证码,简单的接口参数加密 3.破解各种行为式验证码和混淆 JS |
10
supervipcard 2019-01-29 09:45:55 +08:00
至于你说的前端知识,个人认为没必要刻意去学,懂交互,HTML 会解析,能看懂并调试 JS 就差不多了
|
11
CharlieBrown 2019-01-29 10:15:45 +08:00
|
12
zhangslob669 2019-01-29 10:26:34 +08:00
一年爬虫,准备转大数据
|
13
locoz 2019-01-29 10:37:29 +08:00 1
爬虫是需要啥东西都了解一下的,不是单单学点前端知识就能解决问题,如果单纯的是为了破解的话应该学的是逆向知识,举两个常见的例子吧:
1、轻度混淆、没有用 eval 什么的加密的 JS 代码 这种级别的代码根本不需要什么前端知识,会用浏览器开发者工具调试的人随便就能找出需要的东西是在哪生成的,别人调用的什么库直接上 google 查就好了,一些关键词( md5、sha256、aes...)也很容易辨认,一眼就能看出是干嘛的,再打个断点就知道具体参数是什么了,所以跟前端知识没啥关系。 2、高度混淆 /加密+做了各种反调试检测的 JS 代码 这种代码你让做前端开发的人来看都看不懂,对于这种 JS 代码来说,普通的前端知识根本不重要,需要的是用一些更底层的东西来恢复出这一坨屎一样的代码它原来的样子,而且一些反调试的操作根本不会是正常的前端开发会用上的,所以跟前端知识依然没啥关系。 然后一些其他领域的东西也能作为你的工具,像你爬淘宝的话如果搞不定属于上面提到的第二种 JS 代码的 ua 参数生成,你还可以使用测试领域的自动化测试来做,如果觉得 PC 上的自动化测试对于当前需求的性价比不高,想要速度更快一些、资源占用更少一些、更稳定一些的,你还能在自动化测试的基础上加上安全领域的中间人攻击甚至更黑科技一点的操作,所以方法的多样性非常重要。(当然我遇到过的绝大多数只会用自动化测试工具爬的人水平也不咋样,逆向还是得会的) |
15
x86 2019-01-29 10:38:58 +08:00
所有页面...所见即所得...
|
16
TimePPT 2019-01-29 11:01:20 +08:00 1
|
17
Johnson66 2019-01-29 11:08:22 +08:00
学好 JS
|
18
keyakizaka46 OP @locoz 感谢
|
19
houzhimeng 2019-01-29 13:54:32 +08:00
爬虫只能算副职业
|
20
xiaozizayang 2019-01-29 14:02:30 +08:00
爬虫确实天花板比较低,言归正传,自己以前写的一篇文章,希望对你有帮助 [博文链接]( https://www.howie6879.cn/post/2019/02-talk-about-python-spider/)
|
21
wersonliu9527 2019-01-29 15:23:04 +08:00 1
哎,我就是爬虫的,前端 java 都略懂。一般公司都搭好扩展好爬虫框架,每天写点解析,也有爬淘宝部分商品的需求
对于我这种菜鸟,pc 淘宝网页很难搞,浏览商品都要登录,app 抓包更是头大。最后通过 https://h5.m.taobao.com 这个找到接口取到了需要的数据 |
23
37Y37 2019-01-29 16:03:37 +08:00
就中国目前的法律来说,爬虫都是违法的。。。
|
25
penghong 2019-01-29 17:09:35 +08:00
爬虫没有前途
|
27
Kylin30 2019-01-29 18:32:23 +08:00
小偷公司?
|
29
locoz 2019-01-29 20:57:22 +08:00 via Android
@37Y37 #26 前提有很多,数据的版权问题、数据的用途、部分数据对源站点是否重要(比如原创视频、电商网站的价格、景点 /票务类网站的余票 /价格信息)、用户协议中是否有标明禁止爬虫采集 /逆向工程等都可以影响爬虫的违法与否
|
30
locoz 2019-01-29 21:09:48 +08:00 via Android
@37Y37 #27 顺便再举两个例子:
比如你做了个网站,搜索引擎来爬你,你觉得违法的话那你的网站就不要让人家索引了呗,自己想办法导用户去; 比如你控制着任天堂的 eshop,有人来爬不同地区的游戏价格,然后做了个比价网站给其他玩家用来参考,不管你觉得违不违法你都不一定会去管,因为根本不影响你的利益,有了这网站之后一部分玩家还会买游戏买得更欢,你收厂商的授权费和抽成还是一样的收,皆大欢喜。 |
32
richangfan 2019-01-29 21:21:47 +08:00
爬虫从入门到入狱
|
33
forget166 2019-01-29 22:50:37 +08:00 via Android
阿里系网站正一五时花六时变,没有一定量的代理 ip 和账号,第一关你就出局了
|
34
37Y37 2019-01-30 09:30:30 +08:00
@locoz 学到了大佬,其实是未经授权的爬取应该都是违法的,这里不讨论数量,既然是需要爬虫去爬了数量肯定不会少,不管对方有没有告就法律层面来说就是违法的
|
35
locoz 2019-01-30 10:36:48 +08:00
@37Y37 #34 那你认为人肉爬虫违法吗?就是招一群实习生去 1688 上复制粘贴商品信息,然后上传到自家平台上的,这种公司我是见过的,从技术层面上来说这也是爬虫,只不过是人来做采集入库这个操作而已,但阿里并没有给过什么授权。
如果要说这事情违法的话,在律条里也找不出哪条能定罪的,毕竟人家只是从 1688 上复制粘贴到另一个地方,也没侵犯阿里的什么权益,最终货源还是走 1688 上去采购。 如果按“未经授权的爬取应该都是违法的”这种方式来说这公司是违法了的话,那是不是所有人在复制粘贴淘宝上的商品信息到微信上之前还要问一下阿里同不同意了呢?是不是当今社会上的几乎所有人都已经违法了呢? |