python网络爬虫实验报告_Python网络爬虫实例讲解

article/2025/11/8 17:21:42

聊一聊Python与网络爬虫。

1、爬虫的定义

爬虫:自动抓取互联网数据的程序。

2、爬虫的主要框架

10333a337-0.jpg

爬虫程序的主要框架如上图所示,爬虫调度端通过URL管理器获取待爬取的URL链接,若URL管理器中存在待爬取的URL链接,爬虫调度器调用网页下载器下载相应网页,然后调用网页解析器解析该网页,并将该网页中新的URL添加到URL管理器中,将有价值的数据输出。

3、爬虫的时序图

1033394532-1.jpg

4、URL管理器

URL管理器管理待抓取的URL集合和已抓取的URL集合,防止重复抓取与循环抓取。URL管理器的主要职能如下图所示:

1033393413-2.jpg

URL管理器在实现方式上,Python中主要采用内存(set)、和关系数据库(MySQL)。对于小型程序,一般在内存中实现,Python内置的set()类型能够自动判断元素是否重复。对于大一点的程序,一般使用数据库来实现。

5、网页下载器

Python中的网页下载器主要使用urllib库,这是python自带的模块。对于2.x版本中的urllib2库,在python3.x中集成到urllib中,在其request等子模块中。urllib中的urlopen函数用于打开url,并获取url数据。urlopen函数的参数可以是url链接,也可以使request对象,对于简单的网页,直接使用url字符串做参数就已足够,但对于复杂的网页,设有防爬虫机制的网页,再使用urlopen函数时,需要添加http header。对于带有登录机制的网页,需要设置cookie。

6、网页解析器

网页解析器从网页下载器下载到的url数据中提取有价值的数据和新的url。对于数据的提取,可以使用正则表达式和BeautifulSoup等方法。正则表达式使用基于字符串的模糊匹配,对于特点比较鲜明的目标数据具有较好的作用,但通用性不高。BeautifulSoup是第三方模块,用于结构化解析url内容。将下载到的网页内容解析为DOM树,下图为使用BeautifulSoup打印抓取到的百度百科中某网页的输出的一部分。

1033393623-3.jpg

关于BeautifulSoup的具体使用,在以后的文章中再写。下面的代码使用python抓取百度百科中英雄联盟词条中的其他与英雄联盟相关的词条,并将这些词条保存在新建的excel中。上代码:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

from bs4import BeautifulSoup

import re

import xlrd

import xlwt

from urllib.requestimport urlopen

excelFile=xlwt.Workbook()

sheet=excelFile.add_sheet('league of legend')

## 百度百科:英雄联盟##

html=urlopen("http://baike.baidu.com/subview/3049782/11262116.htm")

bsObj=BeautifulSoup(html.read(),"html.parser")

#print(bsObj.prettify())

row=0

for nodein bsObj.find("div",{"class":"main-content"}).findAll("div",{"class":"para"}):

links=node.findAll("a",href=re.compile("^(/view/)[0-9]+\.htm$"))

for linkin links:

if 'href' in link.attrs:

print(link.attrs['href'],link.get_text())

sheet.write(row,0,link.attrs['href'])

sheet.write(row,1,link.get_text())

row=row+1

excelFile.save('E:\Project\Python\lol.xls')

输出的部分截图如下:

1033391336-4.jpg

excel部分的截图如下:

10333a403-5.jpg

以上就是本文的全部内容,希望对大家学习Python网络爬虫有所帮助。


http://chatgpt.dhexx.cn/article/8oViRQkJ.shtml

相关文章

Python网络爬虫简介与环境配置

第一章 Python网络爬虫简介与环境配置 1.1 网络爬虫简介 随着互联网的快速发展越来越多的信息被发布到互联网上,这些信息被嵌入到各种各样的网页结构及样式中。虽然搜索引擎可以辅助用户搜索这些网页信息,但是通用的搜索引擎的目标是尽可能覆盖全网络&…

五分钟学会Python网络爬虫

但不管怎样,爬虫技术是无罪的,还是值得我们开发人员去学习了解一下的。在学习之前,我们还是要先了解一下相关概念。 什么是爬虫 网络爬虫:又被称为网页蜘蛛,网络机器人,是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。 大数据时代,要进行数据分析,首先…

python爬虫简介

python爬虫是收集互联网数据的常用工具,近年来随着互联网的发展而快速发展。使用网络爬虫爬取网络数据首先要了解网络概念和主要分类,各类爬虫的系统结构、运作方式,常用策略,以及主要的应用场景,同时,出于…

python爬虫入门教程(非常详细),超级简单的Python爬虫教程

一、基础入门 1.1什么是爬虫 爬虫(spider,又网络爬虫),是指向网站/网络发起请求,获取资源后分析并提取有用数据的程序。 从技术层面来说就是 通过程序模拟浏览器请求站点的行为,把站点返回的HTML代码/JSON数据/二进制数据&…

python简单实现网络爬虫

前言 在这一篇博客中,我会用python来实现一个简单的网络爬虫。简单的爬取一下一些音乐网站、小说网站的标题、关键字还有摘要!所以这个爬虫并不是万能爬,只针对符合特定规则的网站使用。(只使用于爬标题、关键字和摘要的&#xff…

【海岛吉他1】全面认识吉他谱

调号 拍号 1G 4/4 休止符:

新手小白学吉他,如何掌握基础快速入门

吉他弹唱是非常快乐,非常浪漫,非常酷的一件事。俗话说“不怕流氓有文化,就怕流氓有吉他”,大家也都知道吉他是把妹的神器。相信很多人的床底下,角落里,都扔了一把布满了灰尘的吉他,因为学不会而…

乐理: 认识吉他谱

文章目录 2019/6/20日记调式节奏与拍谱标记参考资料 2019/6/20日记 基本乐理都不会,到处搜资料太乱了,找了几个免费乐理教程先好好系统学习一下吧,不知道好不好。记录一下, 每天做题做累了看一点吧。。。 网易云公开课聆听音乐(耶鲁大大学公…

转自知乎的吉他学习篇

iPhone Android 错过这篇,你可能这辈子都学不会弹吉他了(多图) 图片:《醉乡民谣》 零基础如何自学吉他? 梁策, 非阴谋论者/产品经理/吉他爱好者 错过这篇文章,你可能这辈子都学不会弹吉他了。 …

新手入门吉他推荐,第一把吉他从这十款选绝不踩雷!初学者吉他选购指南【新手必看】#VEAZEN费森#雅马哈#卡马

一、新手购琴注意事项: 1、预算范围 一把合适的吉他对于初学者来说会拥有一个很好的音乐启蒙。选一款性价比高,做工材料、音质和手感相对较好的吉他自然不会是一件吃亏的事。**初学者第一把琴的预算,我觉得最低标准也是要在500元起&#xf…

学吉他该如何科学背谱?

相信对于很多正在学习或者技巧纯熟的吉他手来说,背谱都是一个难题。你可能会说,背谱,背就完事了。但是实际上,对于高手来说,背诵一个乐谱可能都得花十几个小时,对于新手而言,背诵的时间可能是高…

零基础简单的乐理知识

音符以及它的两种表达形式 首先,我们从最基本的开始讲,即七个基本的音符1234567,也音译为​​do​​、​​re​​、​​mi​​、​​fa​​、​​sol​​、​​la​​、​​xi​​,这是每个人都知道的(当然如果这个都不知道那我也…

Ffmpeg视频压制的基础知识

Ffmpeg视频压制的基础知识 ffplay播放 全屏播放 ffplay -i .\0001.mp4以720P播放 ffplay -i -vf scale1280:-1 .\0001.mp4指定分辨率 ffplay -volume 1 -x 1280 -y 720 .\0001.mp4格式转换 码率设置 ffmpeg -i input.mp4 -b:v 1000 output.mp4-i input 输入路径 -b:v 帧率 …

数字音频基础知识

了解声音 声波 声音始于空气中的振动,如吉他弦、人的声带或扬声器纸盆产生的振动。这些振动一起推动邻近的空气分子,而轻微增加空气压力。压力下的空气分子随后推动周围的空气分子,后者又推动下一组分子,依此类推。高压区域穿过…

2022-08-13 零基础吉他入门知识(三) 六线谱,和弦图和爬格子的知识补充,吉他中的和弦:大三和弦的各个和弦图理解

文章目录 1.六线谱2.和弦图(补充)3.爬格子(补充):按照六根弦的音阶来爬格子4.吉他中的大三和弦4.1.C和弦4.2.D和弦4.3.E和弦4.4.G和弦4.5.A和弦4.6.练习和要点 1.六线谱 六线谱的最上面是一品(吉他最下面最细的那根弦)有时候六线谱会标注数字 其中,0代表空弦,1代表一品,其他数…

2022-07-31 零基础吉他入门知识(一):认识吉他(琴弦,品格)等,如何弹奏吉他,左右手指法练习,扫弦,和弦级数和常见和弦

文章目录 0.前言1.吉他的琴弦1.1.叫什么?1.2.分别是什么音? 2.吉他的品格2.1.名词介绍2.2.变调夹2.3.看懂和弦图 3.开始弹吉他3.1.怎么弹3.2.右手指法练习3.2.左手指法练习(爬格子)3.4.左右手配合 4.扫弦4.1.怎么扫4.2.民谣扫弦(节奏型)4.3.慢谣扫弦(节奏型) 5.和弦5.1.和弦级…

2022-08-01 零基础吉他入门知识(二) 吉他上的十二平均律,给吉他调弦,规范化弹吉他:节拍器,持琴姿势和拨弦手势

文章目录 0.回顾1.吉他上的十二平均律钢琴上的十二平均律:七个白键五个黑键组成数量为12的不同音调的音阶吉他上的十二平均律:找出每一根弦上的1234567吉他上的音阶把位图【记忆】 2.给吉他调弦步骤成功标志 3.左右手练习时的规范化:节拍器,持琴姿势,拨弦姿势 0.回顾 2022-07-…

android 吉他模拟器,真实吉他模拟器

真实吉他模拟器让你出门在外也可以演奏各类吉他,只需要手机就可以模拟吉他琴弦和音色,在手机上练习吉他将不再是梦想,真实吉他模拟器带你遨游乐器演奏世界。 真实吉他模拟器玩法特色 ★ 各种类型的乐器: - 原声吉他 - 电吉他 - 古…

吉他指弹特殊调弦的方法及基础音阶知识

在学习特殊调弦之前我们需要知道一些基础的吉他音阶知识: 这里音阶简谱和吉他弦都可以用123456表示,所以下面的数字具体表示什么一定要区分清楚!! 1.音阶:1 2 3 4 5 6 7 i (这里的i表示1上加一个点,即高音的…