如何学习Python爬虫

Python018

如何学习Python爬虫,第1张

个人觉得:

新手学习python爬取网页先用下面4个库就够了:(第4个是实在搞不定用的,当然某些特殊情况它也可能搞不定)

1. 打开网页,下载文件:urllib

2. 解析网页:BeautifulSoup,熟悉JQuery的可以用Pyquery

3. 使用Requests来提交各种类型的请求,支持重定向,cookies等。

4. 使用Selenium,模拟浏览器提交类似用户的操作,处理js动态产生的网页

这几个库有它们各自的功能。配合起来就可以完成爬取各种网页并分析的功能。具体的用法可以查他们的官网手册(上面有链接)。

做事情是要有驱动的,如果你没什么特别想抓取的,新手学习可以从这个闯关网站开始

,目前更新到第五关,闯过前四关,你应该就掌握了这些库的基本操作。

实在闯不过去,再到这里看题解吧,第四关会用到并行编程。(串行编程完成第四关会很费时间哦),第四,五关只出了题,还没发布题解。。。

学完这些基础,再去学习scrapy这个强大的爬虫框架会更顺些。这里有它的中文介绍。

这是我在知乎的回答,直接转过来有些链接没有生效,可以到这里看原版,http://www.zhihu.com/question/20899988/answer/59131676

1、收集数据

Python爬虫程序可用于收集数据。这也是最直接和最常用的方法。由于爬虫程序是一个程序,程序运行得非常快,不会因为重复的事情而感到疲倦,因此使用爬虫程序获取大量数据变得非常简单和快速。

由于99%以上的网站是基于模板开发的,使用模板可以快速生成大量布局相同、内容不同的页面。因此,只要为一个页面开发了爬虫程序,爬虫程序也可以对基于同一模板生成的不同页面进行爬取内容。

2、调研

比如要调研一家电商公司,想知道他们的商品销售情况。这家公司声称每月销售额达数亿元。如果你使用爬虫来抓取公司网站上所有产品的销售情况,那么你就可以计算出公司的实际总销售额。此外,如果你抓取所有的评论并对其进行分析,你还可以发现网站是否出现了刷单的情况。数据是不会说谎的,特别是海量的数据,人工造假总是会与自然产生的不同。过去,用大量的数据来收集数据是非常困难的,但是现在在爬虫的帮助下,许多欺骗行为会赤裸裸地暴露在阳光下。

3、刷流量和秒杀

刷流量是Python爬虫的自带的功能。当一个爬虫访问一个网站时,如果爬虫隐藏得很好,网站无法识别访问来自爬虫,那么它将被视为正常访问。结果,爬虫不小心刷了网站的流量。

除了刷流量外,还可以参与各种秒杀活动,包括但不限于在各种电商网站上抢商品,优惠券,抢机票和火车票。目前,网络上很多人专门使用爬虫来参与各种活动并从中赚钱。这种行为一般称为薅羊毛,这种人被称为羊毛党。不过使用爬虫来薅羊毛进行盈利的行为实际上游走在法律的灰色地带,大家不要尝试。

这个回答只是参考:

python建议先学基础,把基础打扎实之后再去学爬虫,学爬虫的时候学下request库,json库,lxml库中的etree或者bs4库中的BeautifulSoup... ... 然后再学个储存数据的方式,可以用mysql、excel表格...存储数据。等到熟练运用之后,就可以考虑用框架(scarpy...)进行爬取。