python爬虫之简介以及前期准备
2017-11-16 21:41
471 查看
对于学完python基础然后想找点项目练手的人,爬虫可以说是很不错的方向之一。那么爬虫究竟是做什么用的呢?又要怎么用呢?哈哈,kyda最近正好在学,那么就写一个系列的文章出来吧。顺便记录我的学习历程。
说白了就是如果我们想要一个网页中的特定内容,比如网页中的所有图片。这时如果我们利用复制粘贴的方式去获取的话就会消耗我们大量的精力。于是,爬虫就派上用场了。
我们拿糗事百科来举例子。
上面是糗事百科的主页,如果段友有一天想把上面所有的段子截取下来,制作成文本。可是,糗事百科的段子那么多,一段段的去复制粘贴简直就是噩梦。那么我们可以自己写一个“机器人”帮我们完成这一些操作。这个机器人就是所谓的爬虫。
有人说爬取这些信息并没多大用处,那么我告诉你错了,我举上面糗事百科的例子只是为了方便说明,以及入门示例而已。爬虫的重要性体现在哪呢?这几年可以说的大数据时代的来临。数据的作用很重要。比如奥巴马团队就曾运用大数据分析出哪个洲对他更有力,然后就去那个洲做演讲,帮助他赢得了连任的机会。当然我们还可以利用数据分析出一个用户的偏好,然后推荐一些特定产品给他,这就是淘宝的智能推荐原理。那么对于蕴含大量数据的互联网,爬虫可以帮助我们获取做这些数据。
3.requests: 这个需要安装 ,windows下
这里我要重点介绍一下requests的作者,是python大牛,也是一个励志男神。都说程序员就是一届屌丝,那可不一定。requests作者Kenneth Reitz会告诉你错了。程序员文艺起来简直是叫人怀疑人生。不过他也有黑历史,比如胖。不过他减肥成功了。
贴下他的照片:
好了,关于他我就不多说了。有兴趣自己去百度下。
爬取页面如下:
所用代码:
结果:
这就是我们爬去下来的段子,细心的同学就会发现有些段子并不完整。而有些段子明显是要配图片的。
比如第四行:“想想还真是!!”在网页中是:
而爬虫只获取了文字,这样的段子对于我们来说是无用的。
那么我们该如何筛选只含有文字的段子,或者将有图片的段子的图片下载下来呢?
这里就留个疑问,有兴趣的可以思考,我后续的文章也会来解决这个问题。
[b]好了,觉得我写的不错的可以加我微信公众号,我的文章也会同步到公众号:[/b]
一.爬虫的作用
网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常被称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本,已被广泛应用于互联网领域。搜索引擎使用网络爬虫抓取Web网页、文档甚至图片、音频、视频等资源,通过相应的索引技术组织这些信息,提供给搜索用户进行查询。网络爬虫也为中小站点的推广提供了有效的途径。说白了就是如果我们想要一个网页中的特定内容,比如网页中的所有图片。这时如果我们利用复制粘贴的方式去获取的话就会消耗我们大量的精力。于是,爬虫就派上用场了。
我们拿糗事百科来举例子。
上面是糗事百科的主页,如果段友有一天想把上面所有的段子截取下来,制作成文本。可是,糗事百科的段子那么多,一段段的去复制粘贴简直就是噩梦。那么我们可以自己写一个“机器人”帮我们完成这一些操作。这个机器人就是所谓的爬虫。
有人说爬取这些信息并没多大用处,那么我告诉你错了,我举上面糗事百科的例子只是为了方便说明,以及入门示例而已。爬虫的重要性体现在哪呢?这几年可以说的大数据时代的来临。数据的作用很重要。比如奥巴马团队就曾运用大数据分析出哪个洲对他更有力,然后就去那个洲做演讲,帮助他赢得了连任的机会。当然我们还可以利用数据分析出一个用户的偏好,然后推荐一些特定产品给他,这就是淘宝的智能推荐原理。那么对于蕴含大量数据的互联网,爬虫可以帮助我们获取做这些数据。
二.前期准备
在开始我们爬虫之旅之前,我们需要做以下准备。1.python基础,这个不用多说。
两个打基础连接:python菜鸟教程 或者 廖雪峰python,这两个结合着看,多敲代码。2.urllib:这个是基础库,python自带,我们后面文章会讲到
3.requests: 这个需要安装 ,windows下 pip install requests
这里我要重点介绍一下requests的作者,是python大牛,也是一个励志男神。都说程序员就是一届屌丝,那可不一定。requests作者Kenneth Reitz会告诉你错了。程序员文艺起来简直是叫人怀疑人生。不过他也有黑历史,比如胖。不过他减肥成功了。贴下他的照片:
好了,关于他我就不多说了。有兴趣自己去百度下。
4.http协议:可以看我另外一篇博文,HTTP详解(转)
5.浏览器:Chrome 或者 Firefox,其他浏览器我真的不喜欢,不够简洁
6.正则表达式:用于选取我们需要的信息。这个最好还是去学一下,后面我会用到的。
链接:正则表达式30分钟入门教程7.xpath:一样是用于选取我们需要的信息。
不用太深入,了解一下也好,我后面文章会介绍下,可以去这个了解下:xpath入门三.示例
说了那么多展现一下效果吧。爬取页面如下:
所用代码:
import requests from lxml import html URL = 'https://www.qiushibaike.com/' sess = requests.session() page = sess.get(URL) tree = html.fromstring(page.text) #选出包含段子的部分 total_content = tree.xpath('//div[@id="content-left"]/div/a[1]/div/span') content = [] for show in total_content: result = show.text r = result.replace('\n', '') print(r)
结果:
这就是我们爬去下来的段子,细心的同学就会发现有些段子并不完整。而有些段子明显是要配图片的。
比如第四行:“想想还真是!!”在网页中是:
而爬虫只获取了文字,这样的段子对于我们来说是无用的。
那么我们该如何筛选只含有文字的段子,或者将有图片的段子的图片下载下来呢?
这里就留个疑问,有兴趣的可以思考,我后续的文章也会来解决这个问题。
[b]好了,觉得我写的不错的可以加我微信公众号,我的文章也会同步到公众号:[/b]
相关文章推荐
- python实现爬虫统计学校BBS男女比例(一)前期准备、方案分析
- 零基础自学用Python 3开发网络爬虫(二): 用到的数据结构简介以及爬虫Ver1.0 alpha
- Python爬虫基础知识及前期准备
- python实现爬虫统计学校BBS男女比例(一)前期准备、方案分析
- 【selenium 2.0 python 自动化测试】简介及前期准备
- 零基础自学用Python 3开发网络爬虫(二): 用到的数据结构简介以及爬虫Ver1.0 alpha
- C#开源爬虫NCrawler源代码解读以及将其移植到python3.2(2)
- python3 爬虫环境准备 (一)
- 开源you-get项目爬虫,以及基于python+selenium的自动测试利器
- python爬虫实现带附件+html内容以及图片的邮件发送
- Python基础爬虫实战实例----爬取1000个Python百度百科词条及相关词条的标题和简介
- Java爬虫入门简介(四)——抓包工具的使用以及使用HttpClient模拟用户登录的访问
- 目前网络上开源的网络爬虫以及一些简介和比较
- 16Python爬虫---Scrapy目录结构以及项目创建
- python爬虫进阶(十):日志系统、守护线程以及验证码处理
- C#开源爬虫NCrawler源代码解读以及将其移植到python3.2(1)
- Python字典简介以及用法详解
- python网络爬虫之scrapy 调试以及爬取网页
- python魔法方法以及私有化 (来自潭州教育python爬虫的一枚小学员)
- python爬虫:从页面下载图片以及编译错误解决。