您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦

本文要点:从Python爬虫工程师的招聘要求出发制定学习路线,同时还推荐免费优质的学习资源。 打卡学习不迷茫。

干货满满,建议收藏,需要用到时常看看。 小伙伴们如有问题及需要,欢迎踊跃留言哦~ ~ ~。

前言(为什么写这篇文章)

我陆陆续续更新了三个关于Python编程方面的专栏(PS: 下面会详细介绍这些专栏)。每个专栏都突出介绍了需要不同阶段需要掌握的知识点,各有侧重点。不过美中不足的是还没有一个全面完善的学习路线图将专栏串联起来。

这就好比去一个陌生地方没有地图一样,我们不能走一步算一步,摸着石头过河,而是要走好这一步,想好下一步,知道自己的目标以及要走的路

故在此我专门用一篇文章介绍Python开发工程师需要掌握的相关知识点以及相关知识点的学习路线图。

有了这份学习路线图,妈妈再也不会担心我找不到好工作了。

优质专栏推荐

  1. Python从入门到精通

    推荐理由:

    该专栏重点介绍Python的基础知识点,语言风趣幽默,通俗易懂。所有的Python基础知识点详细的描述。

    文中所涉及的实际代码都通过了实践。订阅专栏之后加入学习群,有啥问题可以直接在学习群里问或者私聊我,让你学习路上不再孤单。

    双十一订阅更是优惠不断优惠券的领取地址
  2. Python笔记

    推荐理由: 免费专栏,主要记录在使用Python的过程中碰到的一些问题和解决方法。有需要小伙伴可以看看。
  3. 推荐理由: 免费专栏,主要记录Python爬虫的相关知识点,持续更新中。

    @

为什么学,怎么学?

学习一门技术,我觉得首先是要明确自己学习的初心。

所以,每学一门技术之前不妨给自己来个三连问:

第一个问题: 我为什么要学这个技术呢?

第二个问题:学了之后可以用来干什么呢?

第三个问题:我该怎么学习这个技术呢?

下面我就来给出我的答案:

  • 第一个问题:我为什么要学习这个技术?

    我的答案是为了找工作(工作需要)。我相信这也是很多小伙伴的学习目的。作为一个工作多年的老程序员,我学一门技术要么是做技术储备,要么是工作需要。当然,也不排除有的小伙伴是出于兴趣爱好等原因。
  • 第二个问题:学了之后可以用来干什么呢?

    我的答案是用来提高工作效率,增强自身能力。比如学习了Python之后我可以用Python来进行爬虫,来开发网站,来编写脚本等等。
  • 第三个问题:我该怎么学习这个技术呢?

    这个问题也非常重要,在学习之前没有考虑清楚的话就很容易走弯路。

    我的答案是首先制定一个靠谱的学习路线图,明确先学习什么,后学习什么,明确是通过看书学习,还是通过看视频学习,还是说通过博客学习,明确是边学边练,还是看着视频刷着手机。

    每个人的学习方法都不尽相同,适合自己的才是最好的。

    我学习方法是:
  1. 制定一个靠谱的学习路线图 (百度搜索XX技术的学习路线或者请教大牛)
  2. 制定学习计划,每天学习什么,每周要学习到啥程度
  3. 找靠谱的学习资源,边学边练。
  4. 编写博客记录自己的学习成果。

Python工程师需要哪些技能呢?

Python工程师需要具备哪些技能呢?我说的不算,张三说的不算,李四说的不算。只有实实在在的大厂的招聘要求说的算。这里我截取了几个大厂Python工程师的招聘要求。

  1. 腾讯招聘Python工程师

  2. 字节跳动招聘爬虫工程师

  3. 快手招聘 Python工程师



    这里找了几个有代表性的大厂的Python工程师的招聘需求。让我们简单分析下这些职位要求。

    共同点:

  • 熟悉Python编程语言(拥有相关的开发经验),语言只是一个工具,对大厂而言只需要你精通某一种开发语言即可。
  • 熟悉MySQL (这个是个通用技能,后端开发都绕不过)
  • 熟悉Linux 系统环境 (这个是个通用技能,后端开发都绕不过)
  • 熟悉主流的爬虫技术及爬虫框架(针对爬虫工程师)

所以,我们的学习路线图也就需要按照这些要求来制定。

1. Python基础的学习路线(必选)

首先是Python基础的需要掌握的知识点的学习路线图。如下图1所示



Python 基础必须熟练掌握,这也没啥好说的。这里说下几个特别重要的知识点:

  1. 数据类型,这是每个程序都会用到的,重点需要掌握序列类型里的列表list,tuple ,还有就是字典dict。
  2. 然后就是流程控制,循环,判断这个也是必须要会的。
  3. 接着就是函数,面向对象的思想,以及文件的操作。
  4. 最后就是并发编程,如何创建一个线程,怎么使用线程池,这个也是必须要掌握的。

Python基础学习资源推荐

这里推荐几个个人认为比较好的学习资源。

  • Python从入门到精通

    推荐理由:通俗易懂,广受好评,同时提供一对一的咨询服务
  • C语言中文网Python基础篇

    推荐理由:通俗易懂,免费,免费,对新手很友好。
  • Python3 简明教程

    推荐理由:实验楼的课程,提供在线学习以及练习的环境,学练一体,入门课程免费。不过保存运行环境需要购买会员

2. Python爬虫的学习路线(必选)

大厂纯Python爬虫工程师的岗位比较少,我找遍了阿里,腾讯,百度,字节的Python爬虫工程师的相关岗位。最终只在字节跳动招聘网站上找到了Python爬虫工程师的岗位。这就告诉我们学习Python不能止步于爬虫。 同样的这里我也给出一份爬虫的学习路线图,如下图2所示。



虽然,只掌握爬虫相关的知识点比较难找到对口的好岗位。但是如果能熟练掌握爬虫技术的运用,对自身Python开发能力会有一个非常大的提升。

爬虫的学习路线主要是:

  1. 掌握基础的HTML和Dom树的相关知识点,懂得啥叫元素,啥叫标签,啥是css选择器。
  2. 按照爬虫的三大步骤:抓取网页源码,提取所需数据,数据存储分别来学习。
  3. 首先是抓取网页源码,这里就是熟练运用requests库了。
  4. 接着是提取所需数据了,这里就是要熟练掌握lxml库的运用,XPath选择器,以及正则表达式了。
  5. 在接着就是保存提取的数据了。数据可以保存到MySQL,NoSQL 等数据库了或者CSV中。一般而言,在实际开发中都是保存数据库中。这就需要我们掌握一些数据库的基础知识了。
  6. 然后就是多线程爬虫,批量爬取数据的话,单线程的程序肯定是力不从心的,这时候就需要用到在Python基础学到的多线程的知识点。将其运用到实际爬虫中去。
  7. 如果每次都是这么搞,爬虫的效率势必会比较慢,这就开始学习专业了爬虫框架了Scrapy框架了。

    经过上述七个步骤,你对Python爬虫技术也了解的差不多了。

    但是大厂往往要求还会高一点,比如字节的爬虫工程师会要求你熟悉常见反爬封禁策略。

Python爬虫学习资源推荐

  1. 黑马Python爬虫学习视频

    获得方式:关注公众号【码农飞哥】回复: 学习资料



    推荐理由:视频讲解很细致,路线图中涉及到的知识点都讲解到了。唯一美中不足的是视频有点老了。视频还有配套的课件以及代码
  2. 13天搞定python分布式爬虫_尚学堂Python网络爬虫教程和爬虫实战详解_Python分布式

    推荐理由:免费视频,尚学堂官方出品,视频较新。爬虫相关的知识点基本涉及到了。

3. Python网站开发(可选)

学习完成Python爬虫中,相信你的Python开发能力已经上了一个很大的台阶,如果有兴趣的话可以学习一下Python网站开发。同样的这里给出了一个学习路线图。如图3所示:



网页开发需要了解一些必备的前端知识点。

  1. 了解前端知识点:HTML,CSS,ajax。
  2. 学习Flask框架或者Django框架,这两个框架都是Web开发框架。它们的区别是:

    Flask:

    小巧、灵活,让程序员自己决定定制哪些功能,非常适用于小型网站。

    对于普通的工人来说将毛坯房装修为城市综合体还是很麻烦的,使用Flask来开发大型网站也一样,开发的难度较大,代码架构需要自己设计,开发成本取决于开发者的能力和经验。

    Django:

    大而全,功能极其强大,是Python web框架的先驱,用户多,第三方库极其丰富。

    非常适合企业级网站的开发,但是对于小型的微服务来说,总有“杀鸡焉有宰牛刀”的感觉,体量较大,非常臃肿,定制化程度没有Flask高,也没有Flask那么灵活。

另外,快手招聘Python工程师要求掌握Tornado框架,这个框架也是一个Web框架,不过跟其他Web框架最大的不同是它是一个非阻塞式的web框架。

Python网站开发学习资源推荐

  1. Flask官网
  2. Django官方文档
  3. Tornado官方文档

4. Linux 基础(必选)

基本上大多数的项目和网站都是部署在Linux服务器上的,所以掌握Linux的常用操作就显得尤为必要,这也是相关岗位的招聘需求上明确写到的。Linux的学习路线图如下图4所示:



因为Linux不是我们学习的重点,所有我们只需要掌握Linux初阶阶段要求掌握的知识点。对于学有余力的同学,可以学下中级乃至高级的知识点。

Linux初级阶段重点需要掌握的知识点包括:

  1. Linux 的常用命令,这个真的太重要了。
  2. 文件与目录管理
  3. 文件权限与目录配置
  4. 文件的打包和压缩

Linux基础学习资源推荐

  1. 鸟哥的Linux私房菜简体中文版

    推荐理由:鸟哥的Linux私房菜真的是Linux学习的首推资料。我当初还没买了一本实体书,实在是太厚了,也没有看完。实在不推荐买实体书。不过好在鸟哥的Linux私房菜出了在线学习网站,不过官方网站是繁体中文的,对我们这些使用简体的人来说着实有点不太友好。

    所以这里我放出了相对比较友好的简体中文版鸟哥的Linux私房菜简体中文网站

  2. Linux 命令大全

    推荐理由:其实日常开发中我们用的最多的就是各种Linux命令,这里推荐一个Linux命令大全的网站。查找命令特别方便。

5. MySQL的学习路线(必选)

从上面的招聘要求我们同样可以看出MySQL也是我们需要要掌握的一个知识点。MySQL的知识点很多很多,如果要学的很深的话着实要花费一番力气。这里我同样的列举出了一个MySQL的学习路线图,如下图5所示:



老实说,不管是从事Java开发工程师的岗位,还是从事Python开发工程师,MySQL都是绕不过的坎。这里对MySQL的学习还不能只是掌握一些简单的皮毛知识。而是要将MySQL的进阶知识也要掌握好。针对进阶知识学有余力的同学可以掌握一下,普通的同学只需要掌握到SQL基础即可。

特别说明:

  1. MySQL的SQL基础必须要熟练掌握,最基础的建表删表修改表结构的DDL语句, 最基本的增删改查的DML语句,以及复杂的SQL语句,比如关联查询,子查询等等都是要求必须掌握的。
  2. 还需要掌握一下数据库事务,数据库锁,以及SQL语句的优化。

MySQL学习的推荐资源

  1. 《MySQL必知必会》

    推荐理由:这是我整篇文章中推荐的唯一一本书,无他,就是因为这本书小巧,并且特别是和小白入门学习。
  2. SQL在线练习

    leetcode数据库刷题:

    推荐理由:XUESQL网站是一个练习SQL的网站是,适合从基础开始练习,题目由浅入深,而且有配套B站视频。leetcode不仅可以刷算法题,还可以练习写SQL,而且可以在线测评,和评测算法题一样,也会让你很直观的看到自己所写的SQL的运行速度等。相对而言,leetcode中的SQL题目要复杂些。其实,练习SQL最重要的还是要有实际场景,只靠网站练习可能在实际工作中用处不大,如果你日常工作经常遇到些SQL的场景,那么慢慢你的SQL水平就会提升上去。

总结

本文从大厂Python工程师的招聘要求出发,罗列了作为一个Python工程师所必须掌握的知识点,并附上了众多优质的免费的资料。

在此诚邀您加入我的社区。各近3W的社员一起打卡学习,学习的路上不在孤单。

粉丝专属福利关注【码农飞哥】公zhong号

软考资料:实用软考资料

面试题:5G 的Java高频面试题

学习资料:50G的各类学习资料

脱单秘籍:回复【脱单】

并发编程:回复【并发编程】

全网同名【码农飞哥】。不积跬步,无以至千里,享受分享的快乐

我是码农飞哥,再次感谢您读完本文

Python学习路线【对标大厂Python工程师的招聘要求,并推荐优质免费资源】打卡学习不迷茫的更多相关文章

  1. 每天自学两小时Python,整理了最详细的学习路线和规

    上次这篇文章每天自学两小时Python,三个月学通月入20K主要是给大家整理了学习资料视频和PDF书籍,很多需要的都关注私信领取了. 很多朋友领取之后都问我教程有了那么应该从哪去开始学习呢,私信太多我 ...

  2. 零基础快速入门web学习路线(含视频教程)

    下面小编专门为广大web学习爱好者汇总了一条完整的自学线路:零基础快速入门web学习路线(含视频教程)(绝对纯干货)适合初学者的最新WEB前端学习路线汇总! 在当下来说web前端开发工程师可谓是高福利 ...

  3. WEB学习路线2019完整版(附视频教程+网盘下载地址)

    WEB学习路线2019完整版(附视频教程+网盘下载地址).适合初学者的最新WEB前端学习路线汇总! 在当下来说web前端开发工程师可谓是高福利.高薪水的职业了.所以现在学习web前端开发的技术人员也是 ...

  4. VueJs2.0建议学习路线

    最近VueJs确实火了一把,自从Vue2.0发布后,Vue就成了前端领域的热门话题,github也突破了三万的star,那么对于新手来说,如何高效快速的学习Vue2.0呢. 既然大家会看这篇文章,那么 ...

  5. .net 学习路线感想

    从上到大学到现在工作,已经有六年多了,发现学习编程到以开发为工作也是一个挺长的过程的. 大学中,从c语言到java.C#到其他各种语言的学习,还有其他知识的学习如:数据库(oracle.sql Ser ...

  6. c#学习路线及目录导航

    一 很久前的想法 转眼间,2018年已经过了四分之一,从我进入学校选择计算机专业到现在工作,已经过去了4年之久了.这一路走来经历了很多的曲折,对软件开发这个职业有了许多新的认识,我主要是从事NET领域 ...

  7. .net 学习路线感想(转)

    从上到大学到现在工作,已经有六年多了,发现学习编程到以开发为工作也是一个挺长的过程的. 大学中,从c语言到java.C#到其他各种语言的学习,还有其他知识的学习如:数据库(oracle.sql Ser ...

  8. 给你的C/C++学习路线建议

    因为程序员的高工资,吸引了大部人学习编程,但是通过书籍和视频来学习,总是别人推荐一点是一点,那么如何才能系统有效的学习呢?今天就为你来介绍~ C语言是所有学习编程的人都应该首要学习的语言,今天就C语言 ...

  9. 关于python学习路线

    *Python进阶(目录/书籍/学习路线) 忘了从哪里转的了,没办法标记哦,实在不好意思... 目录:) 1. 简介&helloworld&开发环境配置 2.基本语法:标识符& ...

随机推荐

  1. Windows 10 64位操作系统 下安装、配置、启动、登录、连接测试oracle 11g

    一.下载oracle安装包 1:详细下载安装版本可见官网:https://www.oracle.com/technetwork/database/enterprise-edition/download ...

  2. Mysql Navicate 基础操作与SQL语句 版本5.7.29

    SQL数据的增删改查:此部分所有SQL语句在navicat中与mysql命令行执行效果一样,只是mysql服务端在命令行执行,而navicat只是在客户端的图形化打开操作. 一.进入数据库 .连接数据 ...

  3. django setting.py配置文件解读-02

    定义项目目录常量 import os # Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR ...

  4. three.js 模型常用操作

    场景: THREE.Scene();   场景辅助坐标模型: THREE.AxesHelper(20);   相机: THREE.PerspectiveCamera()// 透视相机 THREE.Or ...

  5. P6775-[NOI2020]制作菜品【贪心,dp】

    正题 题目链接:https://www.luogu.com.cn/problem/P6775 题目大意 \(n\)种原材料,第\(i\)个有\(d_i\)个,\(m\)道菜品都需要\(k\)个原料而且 ...

  6. span标签的巧用

    前言: 用struts的标签结合<td>标签将后台数据在表格里渲染了出来,目前需求是需要将两个状态组合在一起显示 解决:通过span标签在td里的套用可以实现 <logic:notE ...

  7. java统一返回标准类型

    一.前言.背景 在如今前后端分离的时代,后端已经由传统的返回view视图转变为返回json数据,此json数据可能包括返回状态.数据.信息等......因为程序猿的习惯不同所以返回json数据的格式也 ...

  8. NOIP 模拟 六十九

    0+30+40+90, 菜..... T1 取石子 考试扔了将近两个小时,最后也没有回忆起博弈论的相关内容.. 现在只会50pts.正解待补. #include<bits/stdc++.h> ...

  9. Windows Terminal 美化教程

    Windows Terminal 美化教程 1.安装Windows Terminal 在微软商店搜索Windows Terminal下载即可 2.安装相应的插件 使用管理员权限打开Windows Te ...

  10. Java(28)集合三Map

    作者:季沐测试笔记 原文地址:https://www.cnblogs.com/testero/p/15228436.html 博客主页:https://www.cnblogs.com/testero ...