python网络爬虫(一):网络爬虫科普与URL含义

1. 科普
   

通用搜索引擎处理的对象是互联网的网页,目前网页的数量数以亿计,所以搜索引擎面临的第一个问题是如何设计出高效的下载系统,已将海量的网页下载到本地,在本地形成互联网网页的镜像。网络爬虫就是担当此大任的。

抓取网页的过程其实和读者平时使用IE浏览器浏览网页的道理是一样的。比如说你在浏览器的地址栏中输入
www.baidu.com
这个地址。打开网页的过程其实就是浏览器作为一个浏览的“客户端”,向服务器端发送了一次请求,把服务器端的文件“抓”到本地,再进行解释、展现。浏览器的功能是将获取的HTML代码进行解析,然后将原始的网页转化为我们看到的网站页面。

网络爬虫最基本的思路就是:从一个页面开始,分析其中的url,提取出来,然后通过这些链接寻求下一个页面。如此往复。

2. 通用爬虫框架

首先,从互联网上精心选择一部分网页,以这些网页的链接地址最为种子URL,将这些种子RUL存入待抓取的URL队列(1),从待抓取的URL队列开始读取一个url(2)。其中的链接地址经过DNS解析(3)转化为网站服务器对应的IP地址。网页下载器根据IP地址向服务器发送请求,获得网页(5),下载好网页后一方面作为原始数据保存到页面库中,等待建立索引等后处理。另一方面将该网页的地址存到已经抓取的队列(8)(避免重复爬取)。对于刚才爬取的网页进行解析(6),抽取其中的url(7),对于不再已抓取URL队列中的URL存于待抓取URL队列(9)和。重复刚才的故事。

3. URL

爬虫最主要的处理对象是URL。简单说url就是输入的网址(例如:http://www.cnblogs.com/kaituorensheng/)。理解URL之前首先理解URI.

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

  1. 访问资源的命名机制

  2. 存放资源的主机名

  3. 资源自身 的名称,由路径表示

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

我们可以这样解释它:

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

  • 位于主机 www.why.com.cn上

  • 通过路径“/myhtml/html1223/”访问

URL是URI的一个子集。它是Uniform Resource
Locator的缩写,译为“统一资源定位符”。
通俗地说,URL是Internet上描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上。
采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。
URL的格式由三部分组成:

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

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

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

第一部分和第二部分用“://”符号隔开
第二部分和第三部分用“/”符号隔开
第一部分和第二部分是不可缺少的,第三部分有时可以省略

3. 1
HTTP协议的URL示例

使用超级文本传输协议HTTP,提供超级文本信息服务的资源。

例:
其计算机域名为www.peopledaily.com.cn。
超级文本文件(文件类型为.html)是在目录
/channel下的welcome.htm。

3.2
文件的URL

用URL表示文件时,服务器方式用file表示,后面要有主机IP地址、文件的存取路径(即目录)和文件名等信息。
有时可以省略目录和文件名,但“/”符号不能省略。

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

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

时间: 2024-10-09 16:14:55

python网络爬虫(一):网络爬虫科普与URL含义的相关文章

python开发的 dht网络爬虫

使用 libtorrent 的python绑定库实现一个dht网络爬虫,抓取dht网络中的磁力链接. dht 网络简介 p2p网络 在P2P网络中,通过种子文件下载资源时,要知道资源在P2P网络中哪些计算机中,这些传输资源的计算机称作peer.在传统的P2P网络中,使用tracker服务器跟踪资源的peer.要下载资源,首先需要取得这些peer. dht网络 tracker服务器面临一些版权和法律问题.于是出现了DHT,它把tracker上的资源peer信息分散到了整个网络中.dht网络是由分布

python核心编程中网络爬虫的例子

1 #!/usr/bin/env python 2 3 import cStringIO # 4 import formatter # 5 from htmllib import HTMLParser # We use various classes in these modules for parsing HTML. 6 import httplib # We only need an exception from this module 7 import os # This provides

Python爬虫入门之一通用爬虫和聚焦爬虫

前言 为什么要做爬虫? 首先请问:都说现在是"大数据时代",那数据从何而来? 企业产生的用户数据:百度指数.阿里指数.TBI腾讯浏览指数.新浪微博指数 数据平台购买数据:数据堂.国云数据市场.贵阳大数据交易所 政府/机构公开的数据:中华人民共和国国家统计局数据.世界银行公开数据.联合国数据.纳斯达克 数据管理咨询公司:麦肯锡.埃森哲.艾瑞咨询 爬取网络数据:如果需要的数据市场上没有,或者不愿意购买,那么可以选择招/做一名爬虫工程师,自己动手丰衣足食. 爬虫是什么? 网络爬虫是一种按照一

Python爬虫与反爬虫(7)

[Python基础知识]Python爬虫与反爬虫(7) 很久没有补爬虫了,相信在白蚁二周年庆的活动大厅比赛中遇到了关于反爬虫的问题吧 这节我会做个基本分享. 从功能上来讲,爬虫一般分为数据采集,处理,储存三个部分. 一般网站从三个方面反爬虫:用户请求的Headers,用户行为,网站目录和数据加载方式.前两种比较容易遇到,大多数网站都从这些角度来反爬虫.第三种一些应用ajax的网站会采用,这样增大了爬取的难度. user-agent 最简单的反爬虫机制,应该算是U-A校验了.浏览器在发送请求的时候

2019最新Python学习教程(Python学习路线_Python爬虫教程)爬虫工程师必备的10个爬虫工具

2019最新Python学习教程(Python学习路线_Python爬虫教程)爬虫工程师必备的10个爬虫工具 爬虫工程师必备的10个爬虫工具! 最近很多学爬虫的伙伴让推荐顺手的爬虫工具,总结了一下,把这些好用的爬虫工具都跟你们找齐活了! 磨刀不误砍柴工!都知道工欲善其事必先利其器,那么作为经常要和各大网站做拉锯战的爬虫工程师们,更需要利用利用好身边的一切法器,才能更快的攻破对方防线.这里以日常爬虫流程,给大家介绍十款爬虫工具,相信大家掌握以后,工作效率提高是完全没有问题了! 大家也可以看看有你们

【Python】爬虫与反爬虫大战

爬虫与发爬虫的厮杀,一方为了拿到数据,一方为了防止爬虫拿到数据,谁是最后的赢家? 重新理解爬虫中的一些概念 爬虫:自动获取网站数据的程序反爬虫:使用技术手段防止爬虫程序爬取数据误伤:反爬虫技术将普通用户识别为爬虫,这种情况多出现在封ip中,例如学校网络.小区网络再或者网络网络都是共享一个公共ip,这个时候如果是封ip就会导致很多正常访问的用户也无法获取到数据.所以相对来说封ip的策略不是特别好,通常都是禁止某ip一段时间访问.成本:反爬虫也是需要人力和机器成本拦截:成功拦截爬虫,一般拦截率越高,

python下的复杂网络编程包networkx的安装及使用

由于py3.x与工具包的兼容问题,这里采用py2.7 1.python下的复杂网络编程包networkx的使用: http://blog.sina.com.cn/s/blog_720448d301018px7.html 处理1里面提到的那四个安装包还要: 2.需要安装 setuptools: http://wenku.baidu.com/link?url=XL2qKVZbDPh-XocJW7OVZmacM4Tio5YhCyu0Uw-E7CjhiXRrhSWI4xheERjEVC3olCZ8muN

八、python操作excel及网络编程和异常处理

一.python操作excel 1.读excel,xlrd模块用来读excel # book = xlrd.open_workbook(r'students.xlsx')#打开excel# print(book.sheet_names())#获取所有sheet的名字# sheet = book.sheet_by_index(0)#根据sheet页的位置去取sheet# sheet2 = book.sheet_by_name('Sheet2')#根据sheet页的名字获取sheet页# print

华森网络;中学举办网络安全科普教育讲座

为进一步引导学生正确合理使用网络,提高学生的网络道德观和法制观,让学生在网络时代下能够健康安全地成长,3月10日下午,江阴市暨阳中学邀请了江阴市人民法院少年庭庭长张迅寒法官到校,为学生进行了以"合理利用网络,做网络的的主人"为主题的网络安为进一步引导学生正确合理使用网络,提高学生的网络道德观和法制观,让学生在网络时代下能够健康安全地成长,3月10日下午,江阴市暨阳中学邀请了江阴市人民法院少年庭庭长张迅寒法官到校,为学生进行了以"合理利用网络,做网络的的主人"为主题的