`
runfeel
  • 浏览: 904411 次
文章分类
社区版块
存档分类
最新评论

[Python]网络爬虫(一):抓取网页的含义和URL基本构成

 
阅读更多

一、网络爬虫的定义

网络爬虫,即Web Spider,是一个很形象的名字。

把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛。
网络蜘蛛是通过网页的链接地址来寻找网页的。

从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,

然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。

如果把整个互联网当成一个网站,那么网络蜘蛛就可以用这个原理把互联网上所有的网页都抓取下来。

这样看来,网络爬虫就是一个爬行程序,一个抓取网页的程序。

网络爬虫的基本操作是抓取网页。

那么如何才能随心所欲地获得自己想要的页面?

我们先从URL开始。


二、浏览网页的过程

抓取网页的过程其实和读者平时使用IE浏览器浏览网页的道理是一样的。

比如说你在浏览器的地址栏中输入 www.baidu.com 这个地址。

打开网页的过程其实就是浏览器作为一个浏览的“客户端”,向服务器端发送了 一次请求,把服务器端的文件“抓”到本地,再进行解释、展现。

HTML是一种标记语言,用标签标记内容并加以解析和区分。

浏览器的功能是将获取到的HTML代码进行解析,然后将原始的代码转变成我们直接看到的网站页面。


三、URI的概念和举例

简单的来讲,URL就是在浏览器端输入的 www.baidu.com 这个字符串。

在理解URL之前,首先要理解URI的概念。

什么是URI?

Web上每种可用的资源,如 HTML文档、图像、视频片段、程序等都由一个通用资源标志符(Universal Resource Identifier, URI)进行定位。

URI通常由三部分组成:

①访问资源的命名机制;

②存放资源的主机名;

③资源自身 的名称,由路径表示。

如下面的URI:
http://www.why.com.cn/myhtml/html1223/

我们可以这样解释它:

①这是一个可以通过HTTP协议访问的资源,

位于主机 www.webmonkey.com.cn上,

通过路径“/html/html40”访问。


四、URL的理解和举例

URL是URI的一个子集。它是Uniform Resource Locator的缩写,译为“统一资源定位 符”。

通俗地说,URL是Internet上描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上。

采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。

URL的格式由三部分组成:

第一部分是协议(或称为服务方式)。

第二部分是存有该资源的主机IP地址(有时也包括端口号)。

第三部分是主机资源的具体地址,如目录和文件名等。

第一部分和第二部分用“://”符号隔开,

第二部分和第三部分用“/”符号隔开。

第一部分和第二部分是不可缺少的,第三部分有时可以省略。


下面来看看两个URL的小例子。


1.HTTP协议的URL示例:
使用超级文本传输协议HTTP,提供超级文本信息服务的资源。

例:http://www.peopledaily.com.cn/channel/welcome.htm

其计算机域名为www.peopledaily.com.cn。

超级文本文件(文件类型为.html)是在目录 /channel下的welcome.htm。

这是中国人民日报的一台计算机。

例:http://www.rol.cn.net/talk/talk1.htm

其计算机域名为www.rol.cn.net。

超级文本文件(文件类型为.html)是在目录/talk下的talk1.htm。

这是瑞得聊天室的地址,可由此进入瑞得聊天室的第1室。


2.文件的URL
用URL表示文件时,服务器方式用file表示,后面要有主机IP地址、文件的存取路 径(即目录)和文件名等信息。

有时可以省略目录和文件名,但“/”符号不能省略。

例:file://ftp.yoyodyne.com/pub/files/foobar.txt

上面这个URL代表存放在主机ftp.yoyodyne.com上的pub/files/目录下的一个文件,文件名是foobar.txt。

例:file://ftp.yoyodyne.com/pub

代表主机ftp.yoyodyne.com上的目录/pub。

例:file://ftp.yoyodyne.com/

代表主机ftp.yoyodyne.com的根目录。


爬虫最主要的处理对象就是URL,它根据URL地址取得所需要的文件内容,然后对它 进行进一步的处理。

因此,准确地理解URL对理解网络爬虫至关重要。

分享到:
评论

相关推荐

    Python网络编程基础+python网络爬虫(抓取网页的含义和URL基本构成) 中文 PDF版

    Python网络编程基础+python网络爬虫(抓取网页的含义和URL基本构成) 中文 PDF版 更多内容见: Python学习资料篇 - 趣思行的博客 - CSDN博客 http://blog.csdn.net/bjarnecpp/article/details/78702210

    Python3简单爬虫抓取网页图片代码实例

    现在网上有很多python2写的爬虫抓取网页图片的实例,但不适用新手(新手都使用python3环境,不兼容python2), 所以我用Python3的语法写了一个简单抓取网页图片的实例,希望能够帮助到大家,并希望大家批评指正。 ...

    Python网络爬虫

    网络爬虫是一个自动提取...另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。

    python模拟爬虫抓取网页内容 采集网页.rar

    python爬虫模拟抓取网页内容,采集网页的内容,这里主要是模拟抓取新浪微博中的内容,里面包括了[源码] 爬取客户端微博信息、[源码] 爬取移动端个人信息 关注id和粉丝id (速度慢)、[源码] 爬取移动端微博信息 (强推)...

    python爬虫万能代码-获取网页

    Python爬虫架构主要由五个部分组成,分别是调度器、URL管理器、网页下载器、网页解析器、应用程序(爬取的有价值数据)。 调度器:相当于一台电脑的CPU,主要负责调度URL管理器、下载器、解析器之间的协调工作。 ...

    Python程序基础:网络爬虫的概念及数据抓取.pptx

    网络爬虫的概念及数据抓取;本章导读;学习目标;网络爬虫(Web Spider)又称网络蜘蛛或网络机器人,是一段用来实现自动采集网站数据的程序。 网络爬虫不仅能够为搜索引擎采集网络信息,而且还可以作为定向信息采集器,...

    python网络爬虫-入门基础学习.zip

    网络爬虫(又被称为网页蜘蛛,网络机器人,在 FOAF 社区中间,更经常的称为网页追逐 者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的 名字还有蚂蚁、自动索引、模拟程序或者蠕虫...

    python网络爬虫-入门基础学习.docx

    网络爬虫(又被称为网页蜘蛛,网络机器人,在 FOAF 社区中间,更经常的称为网页追逐 者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的 名字还有蚂蚁、自动索引、模拟程序或者蠕虫...

    网络爬虫-python和数据分析

    网络爬虫-python和数据分析,网络爬虫(Web crawler),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,它们被广泛用于互联网搜索引擎或其他类似网站,可以自动采集所有其能够访问到的页面内容,以获取...

    Python爬虫框架:PySpider,既简单易用又功能强大且带图形界面.zip

    爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL...

    基于Python的网络爬虫与数据分析学年论文

    全文介绍了基于Python的网络爬虫从确定论题到最终实现效果的过程,具体内容入下: (1)第一章绪论主要说明本次设计项目的背景和目的,以及本次论文的结构。 (2)第二章相关技术介绍主要说明本次毕业设计项目涉及到的...

    支持抓取javascript渲染的页面的简单实用高效的python网页爬虫抓取模块.zip

    爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL...

    Python网络爬虫爬取数学建模论文

    网络爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法...

    Python入门网络爬虫之精华版

    Scrapy是一个基于Twisted的开源的Python爬虫框架,在工业中应用非常广泛。 相关内容可以参考基于Scrapy网络爬虫的搭建,同时给出这篇文章介绍的微信搜索爬取的项目代码,给大家作为学习参考。 参考项目:使用...

    Python网络爬虫的设计与实现

    网络爬虫使用多线程技术,让爬虫具备更强大的抓取能力。对网络爬虫的连接网络设置连接及读取时间,避免无限制的等待。为了适应不同需求,使网络爬虫可以根据预先设定的主题实现对特定主题的爬取。研究网络爬虫的原理...

    利用Python爬虫抓取网页上的图片(含异常处理)

    利用Python爬虫抓取网页上的图片,当遇到不合法的URL时,会自动处理异常,不会导致程序崩溃。直到下载完整个页面的图片,程序才会退出

    python网络爬虫零基础入门-思维导图合集,01-爬虫基础、02-requests模块、03-数据提取、04-selenium

    网络爬虫,也称为网页爬虫,是一种用于抓取和提取网络信息的程序。它可以模仿人类在网络上浏览和查找信息的行为,自动地检索、提取和存储网络上的信息。本文将为读者介绍如何使用Python语言进行网络爬虫,从零基础开始...

    Python网络爬虫实例讲解

    聊一聊Python与网络爬虫。 1、爬虫的定义 爬虫:自动抓取互联网数据的程序。 2、爬虫的主要框架 爬虫程序的主要框架如上图所示,爬虫调度端通过URL管理器获取待爬取的URL链接,若URL管理器中存在待爬取的URL链接,...

    Python网络爬虫与推荐算法新闻推荐平台.zip

    网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐 爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集...

    python 编写的DHT Crawler 网络爬虫,抓取磁力链接.zip

    爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL...

Global site tag (gtag.js) - Google Analytics