如何入门 Python 爬虫?(python爬虫入门到精通)
off999 2024-10-26 12:11 43 浏览 0 评论
1.很多人一上来就要爬虫,其实没有弄明白要用爬虫做什么,最后学完了却用不上。
大多数人其实是不需要去学习爬虫的,因为工作所在的公司里有自己的数据库,里面就有数据来帮助你完成业务分析。
什么时候要用到爬虫呢?
当工作中没有你需要的数据,你必须要从上网搜集一些数据时,这时候就可以利用爬虫模拟浏览器打开网页,获取网页中我们想要的那部分数据,从而提高工作效率。
另外构建自动化表格也是可以用爬虫做到的,也就是通过爬虫搜集特定数据,然后自动保存到Excel中实现自动化表格的构建。
不管是构建爬虫,还上自动化表格,这其中爬虫所要做的包括4步流程(下图),模拟浏览器发起请求(获取代码)->获取响应内容(获取爬到的内容)->解析内容(从爬到的内容里面提取有用的数据)->保存数据(把爬到的数据保存到数据库或Excel文件)中。
2.实现爬虫的工具有有两种,一种是傻瓜式的爬虫工具,这种工具通过可视化界面就可以操作,上手快。另一个种是通过Python编程来爬虫,这种需要一定的学习成本。
3.傻瓜式的爬虫工具
1)后羿,官网:http://houyicaiji.com
打开官网后点击下图“文档中心”有入门教程。
2)集搜客,官网:http://gooseeker.com
4.Python爬虫
通过编程来爬虫涉及到的知识特别多,很多人因为学习爬虫知识点的步骤不对,导致从入门到放弃。下面是学习Python爬虫的整体步骤,从整体上先有个认知:
1)学习爬虫就好比做菜,首先要学会基本的Python语法知识,熟悉食谱,才能心中有数,做好烹饪。
2)相比于厨师的菜刀,Python爬虫常用到的几个重要内置库urllib, http等,则是我们我们爬虫无往不利的利器,它们可以帮我们下载网页。
3)厨师烹饪前对食材的熟悉是基本的要求,而对于爬虫来说,正则表达式re、BeautifulSoup(bs4)、Xpath(lxml)等网页解析工具的学习,也是基本要求,只有学会它们,我们才能知道特定网站的规则,成功爬取其中数据。
4)熟悉了食谱,了解了食材,有了菜刀,我们就可以开始一些简单的网站爬取,了解爬取数据过程。这时候你已经是入门爬虫了。
而如果你不仅仅满足于烹饪简单食材,想继续精进爬虫,那么你可以开始下面步骤的学习,它们是成为爬虫大神的必经之路:
5)了解爬虫的一些反爬机制,header,robot,时间间隔,代理ip,隐含字段等 。
6)学习一些特殊网站的爬取,解决登录、Cookie、动态网页等问题 。
7)了解爬虫与数据库的结合,如何将爬取数据进行储存 。
8)学习应用Python的多线程、多进程进行爬取,提高爬虫效率 。
9)学习爬虫的框架,Scrapy、PySpider等 。
10)学习分布式爬虫(数据量庞大的需求)
5.学习Python爬虫的渠道推荐有CSDN,BiliBili,知乎。这些网站有很多免费优质的资源,可以帮助你快速入门爬虫学习。
6.Python 针对 Excel 有很多的第三方库可以用,比如 xlwings、xlsxwriter、xlrd、xlwt、pandas、xlsxwriter、win32com、xlutils 等等。
这些库可以很方便地实现对Excel文件的增删改写、格式修改等,当然并不推荐你全部都去尝试一下,这样时间成本太大了。使用 xlwings、 xlrd和 xlwt这两个就够了,基本能解决 Excel 自动化表格的所有问题。
xlwing 不光可以读写Excel ,还能进行格式调整、VBA 操作,非常强大且易于使用。
这是关于xlwing官方教程(https://www.xlwings.org)里面有着丰富的实例教学视频,不过里面是英文讲解。
7.需要提醒的是,爬虫作为获取数据的技术手段之一,由于部分数据存在敏感性,如果不能甄别哪些数据是可以爬取,哪些会触及法律,可能下一位上新闻的主角就是你。所以你要格外注意。
对于如何界定爬虫的合法性,可以从三个角度考虑,分别是采集途径、采集行为、使用目的。
1)通过什么途径爬取数据,这个是最需要重视的一点。总体来说,未公开、未经许可、且带有敏感信息的数据,不管是通过什么渠道获得,都是一种不合法的行为。
所以在采集这类比较敏感的数据时,最好先查询下相关法律法规,特别是用户个人信息、其他商业平台的信息 等这类信息,寻找一条合适的途径。
2)使用技术手段应该懂得克制,如果爬虫会导致其他公司服务器和业务造成干扰甚至破坏的行为,这种行为是不能有的。
3)数据使用目的同样是一大关键,就算你通过合法途径采集的数据,如果对数据没有正确的使用,同样会存在不合法的行为。常见的违规行为有:不遵循数据许可协议,超出约定的使用;出售个人信息;不正当商业行为等。
8.最后提醒,如果不是必须要用到爬虫,能不爬就别爬。
我是猴子,中科院硕士/前IBM高级软件工程师/豆瓣8分《数据分析思维》作者,我和知乎联合出品的「数据分析训练营」即将开课,3天带你掌握数据分析实用技巧,包含课程+实战带练,工作提效、升职加薪必备神器!
https://zhuanlan.zhihu.com/p/192273352
相关推荐
- 软件测试|Python requests库的安装和使用指南
-
简介requests库是Python中一款流行的HTTP请求库,用于简化HTTP请求的发送和处理,也是我们在使用Python做接口自动化测试时,最常用的第三方库。本文将介绍如何安装和使用request...
- python3.8的数据可视化pyecharts库安装和经典作图,值得收藏
-
1.Deepin-linux下的python3.8安装pyecharts库(V1.0版本)1.1去github官网下载:https://github.com/pyecharts/pyecharts1...
- 我在安装Python库的时候一直出这个错误,尝试很多方法,怎么破?
-
大家好,我是皮皮。一、前言前几天在Python星耀群【我喜欢站在一号公路上】问了一个Python库安装的问题,一起来看看吧。下图是他的一个报错截图:二、实现过程这里【对不起果丹皮】提示到上图报错上面说...
- 自动化测试学习:使用python库Paramiko实现远程服务器上传和下载
-
前言测试过程中经常会遇到需要将本地的文件上传到远程服务器上,或者需要将服务器上的文件拉到本地进行操作,以前安静经常会用到xftp工具。今天安静介绍一种python库Paramiko,可以帮助我们通过代...
- Python 虚拟环境管理库 - poetry(python虚拟环境virtualenv)
-
简介Poetry是Python中的依赖管理和打包工具,它允许你声明项目所依赖的库,并为你管理它们。相比于Pipev,我觉得poetry更加清爽,显示更友好一些,虽然它的打包发布我们一般不使...
- pycharm(pip)安装 python 第三方库,时下载速度太慢咋办?
-
由于pip默认的官方软件源服务器在国外,所以速度慢,导致下载时间长,甚至下载会频繁中断,重试次数过多时会被拒绝。解决办法1:更换国内的pip软件源即可。pip指定软件源安装命令格式:pipinsta...
- 【Python第三方库安装】介绍8种情况,这里最全看这里就够了!
-
**本图文作品主要解决CMD或pycharm终端下载安装第三方库可能出错的问题**本作品介绍了8种安装方法,这里最全的python第三方库安装教程,简单易上手,满满干货!希望大家能愉快地写代码,而不要...
- python关于if语句的运用(python中如何用if语句)
-
感觉自己用的最笨的方式来解这道题...
- Python核心技术——循环和迭代(上)
-
这次,我们先来看看处理查找最大的数字问题上,普通人思维和工程师思维有什么不一样。例如:lst=[3,6,10,5,7,9,12]在lst列表中寻找最大的数字,你可能一眼能看出来,最大值为...
- 力扣刷题技巧篇|程序员萌新如何高效刷题
-
很多新手初刷力扣时,可能看过很多攻略,类似于按照类型来刷数组-链表-哈希表-字符串-栈与队列-树-回溯-贪心-动态规划-图论-高级数据结构之类的。可转念一想,即...
- “千万别学我!从月薪3000到3万,我靠这3个笨方法逆袭”
-
3年前,我还在为房租而忧心忡忡,那时月薪仅有3000元;如今,我的月收入3万!很多人都问我是如何做到的,其实关键就在于3个步骤。今天我毫无保留地分享给大家,哪怕你现在工资低、缺乏资源,照着做也能够实...
- 【独家攻略】Anaconda秒建PyTorch虚拟环境,告别踩坑,小白必看
-
目录一.Pytorch虚拟环境简介二.CUDA简介三.Conda配置Pytorch环境conda安装Pytorch环境conda下载安装pytorch包测试四.NVIDIA驱动安装五.conda指令一...
- 入门扫盲:9本自学Python PDF书籍,让你避免踩坑,轻松变大神!
-
工作后在学习Python这条路上,踩过很多坑。今天给大家推荐9本自学Python,让大家避免踩坑。入门扫盲:让你不会从一开始就从入门到放弃1《看漫画学Python:有趣、有料、好玩、好用》2《Pyth...
- 整蛊大法传授于你,不要说是我告诉你的
-
大家好,我是白云。给大家整理一些恶搞代码,谨慎使用!小心没朋友。1.电脑死机打开无数个计算器,直到死机setwsh=createobject("wscript.shell")do...
- python 自学“笨办法”7-9章(笨办法学python3视频)
-
笨办法这本书,只强调一点,就是不断敲代码,从中增加肌肉记忆,并且理解和记住各种方法。第7章;是更多的打印,没错就是更多的打印第八章;打印,打印,这次的内容是fomat的使用与否f“{}{}”相同第九...
你 发表评论:
欢迎- 一周热门
-
-
python 3.8调用dll - Could not find module 错误的解决方法
-
加密Python源码方案 PyArmor(python项目源码加密)
-
Python3.8如何安装Numpy(python3.6安装numpy)
-
大学生机械制图搜题软件?7个受欢迎的搜题分享了
-
编写一个自动生成双色球号码的 Python 小脚本
-
免费男女身高在线计算器,身高计算公式
-
将python文件打包成exe程序,复制到每台电脑都可以运行
-
Python学习入门教程,字符串函数扩充详解
-
Python数据分析实战-使用replace方法模糊匹配替换某列的值
-
Python进度条显示方案(python2 进度条)
-
- 最近发表
-
- 软件测试|Python requests库的安装和使用指南
- python3.8的数据可视化pyecharts库安装和经典作图,值得收藏
- 我在安装Python库的时候一直出这个错误,尝试很多方法,怎么破?
- 自动化测试学习:使用python库Paramiko实现远程服务器上传和下载
- Python 虚拟环境管理库 - poetry(python虚拟环境virtualenv)
- pycharm(pip)安装 python 第三方库,时下载速度太慢咋办?
- 【Python第三方库安装】介绍8种情况,这里最全看这里就够了!
- python关于if语句的运用(python中如何用if语句)
- Python核心技术——循环和迭代(上)
- 力扣刷题技巧篇|程序员萌新如何高效刷题
- 标签列表
-
- python计时 (54)
- python安装路径 (54)
- python类型转换 (75)
- python进度条 (54)
- python的for循环 (56)
- python串口编程 (60)
- python写入txt (51)
- python读取文件夹下所有文件 (59)
- java调用python脚本 (56)
- python操作mysql数据库 (66)
- python字典增加键值对 (53)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python qt (52)
- python人脸识别 (54)
- python斐波那契数列 (51)
- python多态 (60)
- python命令行参数 (53)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- centos7安装python (53)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)