您的位置: 首页 > 新闻资讯 > 正文

菜鸟学习Python爬虫要了解这些要点

发布时间:2019-02-12 14:06:08 来源:互联网

通过爬虫可以快速的获取到大量的数据,在众多编程语言中,Python编写爬虫是非常简单的,可以通过自学来实现爬虫爬取数据,那么作为一个菜鸟,如何才能顺利编写爬虫并成功的获取到数据呢?今天小编为大家介绍下关于菜鸟学习Python爬虫要了解这些要点。

一、爬取的基本步骤

大部分爬虫都是按“发送请求——获得页面——解析页面——抽取并储存内容”这样的流程来进行,这其实也是模拟了我们使用浏览器获取网页信息的过程。简单来说,我们向服务器发送请求后,会得到返回的页面,通过解析页面之后,我们可以抽取我们想要的那部分信息,并存储在指定的文档或数据库中。

在这部分你可以简单了解HTTP协议及网页基础知识,比如POSTGET、HTML、CSS、JS,简单了解即可,不需要系统学习。

菜鸟学习Python爬虫要了解这些要点

二、了解Python包

Python中爬虫相关的包很多:urllib、requests、bs4、scrapy、pyspider等,建议你从requests+Xpath开始,requests负责连接网站,返回网页,Xpath用于解析网页,便于抽取数据。

如果你用过BeautifulSoup,会发现Xpath要省事不少,一层一层检查元素代码的工作,全都省略了。掌握之后,你会发现爬虫的基本套路都差不多,一般的静态网站根本不在话下。

三、数据的存储

爬回来的数据可以直接用文档形式存在本地,也可以存入数据库中。开始数据量不大的时候,你可以直接通过Python的语法或pandas的方法将数据存为text、csv这样的文件。当然你可能发现爬回来的数据并不是干净的,可能会有缺失、错误等等,你还需要对数据进行清洗,可以学习pandas包,掌握以下知识点就好:

数据分组:数据划分、分别执行函数、数据重组

缺失值处理:对缺失数据行进行删除或填充

空格和异常值处理:清楚不必要的空格和极端、异常数据

重复值处理:重复值的判断与删除

四、进阶分布式

掌握前面的技术,一般量级的数据和代码基本没有问题了,但是在遇到非常复杂的情况,可能仍然会力不从心,这个时候,强大的scrapy框架就非常有用了。

scrapy是一个功能非常强大的爬虫框架,它不仅能便捷地构建request,还有强大的selector能够方便地解析response,然而它最让人惊喜的还是它超高的性能,让你可以将爬虫工程化、模块化。

五、应对反爬虫机制

当然,爬虫过程中也会经历一些绝望啊,比如被网站封IP、比如各种奇怪的验证码、userAgent访问限制、各种动态加载等等。

遇到这些反爬虫的手段,当然还需要一些高级的技巧来应对,常规的比如访问频率控制、使用代理IP池、抓包、验证码的OCR处理等等。

比如我们经常发现有的网站翻页后url并不变化,这通常就是异步加载。我们用开发者工具取分析网页加载信息,通常能够得到意外的收获。

上文介绍了菜鸟学习Python爬虫要了解这些要点,其实Python爬虫没有那么难,可以不用系统去学习,通过实际的案例来学习一些零散有效的知识也是可以的。


相关文章内容简介

1 菜鸟学习Python爬虫要了解这些要点

通过爬虫可以快速的获取到大量的数据,在众多编程语言中,Python编写爬虫是非常简单的,可以通过自学来实现爬虫爬取数据,那么作为一个菜鸟,如何才能顺利编写爬虫并成功的获取到数据呢?今天小编为大家介绍下关于菜鸟学习Python爬虫要了解这些要点。一、爬取的基本步骤大部分爬虫都是按“发送请求——获得页面——解析页面——抽取并储存内容”... [阅读全文]

最新标签