一份可以找工作的爬虫学习大纲

43 篇文章 0 订阅
41 篇文章 1 订阅

一份可以找工作的爬虫学习大纲

开 篇

爬虫学到什么程度可以找工作?

爬虫的本质是模拟人的操作,发起请求,获取正确的服务器返回的数据。所以网络这一块需要相对熟悉,尤其是http协议。在此基础上,开启脱发之旅吧!

敲黑板:必要部分

·语言选择:一般是了解Python、Java、Golang之一

·熟悉多线程编程、网络编程、HTTP协议相关

·开发过完整爬虫项目:最好有全站爬虫经验

·反爬相关:cookie、ip池、验证码等等

·熟练使用分布式

非必要部分

·了解消息队列,如RabbitMQ、Kafka、Redis等

·具有数据挖掘、自然语言处理、信息检索、机器学习经验

·熟悉APP数据采集、中间人代理

·大数据处理

·数据库Mysql,redis,mongdb

·熟悉Git操作、linux环境开发

·读懂js代码,这个真的很重要

一份可以找工作的爬虫学习大纲

基础篇

一、迈出吃牢饭的第一步:cc攻击

关于requests需要学习的知识点:

发送请求

添加参数

设置请求头

设置代理ip(或者使用第三方服务)

网络异常处理

Json数据如何处理

二、没有技术含量的体力活——xpath,css,re

json的话,有很多解析库,直接转为字典处理就行。

html的话,xpath,css,re都可以。

js的话,那就re,但有时候,返回的js经过re的处理,可以转为html或者json。

三、抢别人的饭碗——Selenium自动化测试工具

配置环境

定位元素,获取属性与文本

动作链:点击,移动,拖拽,按键

下拉框,弹窗,iframe,标签操作

显示等待与隐式等

提高效率,设置UA与代理

四、Web也就那样了——APP爬虫

越来越多的公司转向移动端,web端只留给你一个app二维码。

常见的抓包工具:Fiddler,Wireshark,Charies。小编推荐一个学python的学习老师围鑫(同音),前排的是:762,中间一排是:459,后排的一组是:510 ,把以上三组字母按照顺序组合起来即可,她会安排学习的。,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!内有开发工具,很多干货和技术资料分享!

主要目的就是为了获取app的请求,进行分析。毕竟app没有像浏览器一样,有自带的网络分析调试工具。

进阶篇

一、如何快速吃牢饭——加速

(1)理解阻塞、非阻塞、同步、异步、并发、并行概念

(2)熟悉python队列的使用以及MQ的概念

(3)多进程、进程池和进程间通信

(4)多线程、线程封装、线程全局变量、线程互斥、守护线程以及join的用法

(5)协程、yield关键字、gevent、猴子补丁、asyncio

(6)异步请求轮子aiohttp

(7)常见解决方案:多线+异步(scrapy的原理)或 多进程+异步

二、框架在手,天下我有——轮子真香

爬虫领域,只此一家——scrapy。

官方教程:https://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/tutorial.html

scrapy是一个python爬虫框架。我们自己用requests也能写爬虫(GET某个URL,然后Parse网页的内容)。

(1)理解五大模块与两大中间件的概念和作用

(2)熟悉scrapy流程和配置

(3)如何更换为其他数据库

三、程序员之间的爱恨情仇——高级的反爬

验证码与js加密

(1)验证码常见的有:

纯数字

纯英文

英文加数字

计算题

12306分类选择

点选成语

手机验证码

滑动验证码

特殊轨迹拖动

拖动旋转图片

(2)验证码这里不考虑上机器学习的话,

常用的几种方案:

使用cookie来避免一部分验证码

Tesseract-OCR识别工具

使用第三方打码平台

(3)js加密,嗯~~,烧头发的东西。关于js需要掌握的知识:

(1)如何处理代码混淆

(2)时间戳和哈希

(3)PyExecJS库的使用

(4)浏览器网络分析工具

(4)App逆向,嗯~~,更烧头发。

反编译工具的使用

Android基本文件结构

App调试与抓包

常见四种加固方式

四、建一个情报系统——爬虫监控可视化

(1)Gerapy

Gerapy是一款分布式爬虫管理框架,支持 Python 3,基于 Scrapy、Scrapyd、Scrapyd-Client、Scrapy-Redis、Scrapyd-API、Scrapy-Splash、Jinjia2、Django、Vue.js 开发。

(2)Grafana

Grafana是一款采用 go 语言编写的开源应用,主要用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具,目前已经支持绝大部分常用的时序数据库。

官方文档:http://docs.grafana.org/

实际项目经验

实际项目经验才是真正的开始:

·爬过哪些网站?

·日均最大采集量是多少?

·你遇到哪些棘手问题,如何解决?

真正的开始

1.去各大学习论坛提问

2.去百度和谷歌搜下这个网站有没有人分享出你要爬数据的API

3.看看电脑网页有没有你要的数据,写点代码测试调查下好不好拿,不管好不好拿,也不要急着就开爬

4.看看有没有电脑能打开的手机网站,一般格式为http://m.xxx.com或

http://mobile.xxxx.com,有的话可以用F12检查抓下包,看下抓取难易程度

5.看看有没有手机App,抓下App的包,看能不能抓到接口,如果新版抓不到,可以尝试旧版本。小编推荐一个学python的学习老师围鑫(同音),前排的是:762,中间一排是:459,后排的一组是:510 ,把以上三组字母按照顺序组合起来即可,她会安排学习的。,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!内有开发工具,很多干货和技术资料分享!

6.尝试分析app的一些分享外链

7.抓下公众号和小程序的包,看能不能抓到接口

8.都不好弄的话,尝试的话selenium/airtest

9.最高境界:web端破解js 移动端逆向破解

10.放弃抵抗:js爬虫,人肉爬虫

以上调查完成后,再去确定你要选择的爬取方式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值