Python 基础爬虫简介(测试环境为 Python 2.7)

本文介绍了Python基础爬虫的概念和实现步骤,包括爬虫的调度端、URL管理器、网页下载器和网页解析器。提到了Beautiful Soup库用于解析HTML和XML文件,以及urllib和urllib2在下载资源时的作用。示例代码展示了如何下载网页图片,但需要注意网页编码、资源量和网页元素变动的问题。
摘要由CSDN通过智能技术生成

1、什么是爬虫?

爬虫是一种自动访问互联网,并提取数据的一个程序。归根结底,所谓爬虫,不过是我们用Python语言编写的一个小程序而已。
针对的问题:有些网页需要我们登陆后才能访问,而有些网页则不需要。动态登陆页面由Ajax异步加载实现,往往针对此类页面的抓取较为复杂。本例只是针对于一些不需要登录的静态网页的抓取。

2、实现一个简单的爬虫,需要以下几个方面:

(1)、 爬虫的调度端:用来启动爬虫、终止爬虫或监视爬虫的运行情况。
(2)、 URL管理器:来对将要爬取的URL和已经爬取过的URL进行管理。从URL管理器中我们可以取得一个待爬取的URL将其传送给网页下载器。
(3)、 网页下载器:将指定的URL下载下来,存储为一个本地文件或字符串。这个字符串或本地文件(其实还是一个字符串)将会被传送给网页解析器进行解析。
(4)、 网页解析器:网页解析器能解析出网页中有价值的数据信息,并且每一个网页中又包含了许多指向其他网页的URL,这些URL被解析出后,可以补充到我们的URL管理器中。
URL管理器、网页下载器和网页解析器形成一个循环,只有有相关联的URL存在,便可以一直运行下去。
这个简单的爬虫程序的运行过程是怎样的呢,我们可以简单的看一下。
这里用的是慕课网上一个老师的演示文档。
爬虫的运行过程

Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间。
Soup.find(参数1,参数2,参数3)方法。
Soup.findAll(参数1,参数2,参数3)方法。
两者的参数是一样的,find方法,只会搜索出满足第一个要求的节点,findAll方法会搜索出所有满足要求的节点。搜索到节点之后,我们就可以访问节点的名称、属性和文字。
我们在搜索时,我们可以通过节点的名称进行搜索,也可以通过节点的属性和文字进行搜索。

================================================================

urllib和urllib2。
urllib可以用来提供了urllib.urlretrieve(url,path,callBackFunc)方法,可以将远程服务器上的资源下载到本地。
urllib2可以用来接受Request对象作为参数,从而可以控制HTTP Request的header部。但是有些功能模块却是只有urllib独有,所有我们经常可以看到urllib与urllib2共存在一个项目中。

本例中,所有的代码均为个人纯手打,如有雷同,纯属巧合。先附上一张程序运行的效果图。(不能超过2M,真恼人!)
程序运行结果

详细代码如下:

# -*- coding: cp936 -*-
from bs4 import BeautifulSoup 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值