python3爬虫学习

article/2025/9/7 14:35:48

python3爬虫学习

一、爬虫流程:

①先由urllib的request打开Url得到网页html文档

②浏览器打开网页源代码分析元素节点

③通过Beautiful Soup或则正则表达式提取想要的数据

④存储数据到本地磁盘或数据库(抓取,分析,存储)
二、网页审查元素
1、通过URL访问页面,点击F12进入开发者模式后,可以查看当前页面的HTML信息,通过修改HTML信息可以再客户端实现信息的”整容“,但修改的信息不会回传到服务器,服务器存储的HTML信息不会改变。刷新一下界面,页面还会回到原本的样子。
2、简单实例
1)安装requests第三方库
cmd进入命令窗口,通过cd /d D:\python\Scripts 进入python安装路径下的Scripts路径,输入命令pip install requests命令进行安装(注:若安装时提示pip版本不匹配,重新打开cmd窗口,通过命令 python -m pip install --upgrade pip升级后重新打开cmd窗口进行安装requests库即可。)
2)简单实例
requests库的基础方法如下:
在这里插入图片描述
常用的为requests.get()方法跟requests.post()方法。
requests.get()方法用于向服务器发起GET请求,从服务器得到数据。
例如:

import requestsif __name__ == '__main__':target = 'http://gitbook.cn/'req = requests.get(url=target)print(req.text)

requests.get()方法必须设置的一个参数就是url,因为我们得告诉GET请求,我们的目标是谁,我们要获取谁的信息。
通过requests.get()方法,我们可以顺利的获得网页的HTML信息,但是很多信息是我们不想看到的,我们只想获得正文内容,我们不关心div、br这些html标签。如何把正文内容从这些众多的html标签中提取出来呢?,这是就需要另一个工具Beautiful Soup登场了。
3)Beautiful Soup
爬虫的第一步,是获取整个网页的HTML信息,接下来就是爬虫的第二步,解析HTML信息,提取我们感兴趣的内容。提取的方法有很多,例如使用正则表达式、Xpath、Beautiful Soup等。对于初学者而言,最容易理解,并且使用简单的方法就是使用Beautiful Soup提取感兴趣内容。
Beautiful Soup的安装同requests一样,在D:\python\Scripts 路径下输入命令pip install beautifulsoup4命令进行安装。

# -*- coding:UTF-8 -*-
import requestsif __name__ == '__main__':target = 'http://www.biqukan.com/1_1094/5403177.html'req = requests.get(url=target)print(req.text)

上述代码爬取了”笔趣阁“上一本小说的的HTML信息,如何获取我们所需要的小说正文内容呢?
HTML标签是HTML语言中最基本的单位,也是最重要的组成部分。html标签就像一个个“口袋”,每个“口袋”都有自己的特定功能,负责存放不同的内容。
例如一个标签是这样的:

<div id="content", class="showtxt">

其中id和class就是div标签的属性,content和showtxt是属性值,一个属性对应一个属性值。
仔细观察目标网站一番,我们会发现这样一个事实:class属性为showtxt的div标签,独一份!这个标签里面存放的内容,是我们关心的正文部分。

知道这个信息,我们就可以使用Beautiful Soup提取我们想要的内容了,编写代码如下:

# -*- coding:UTF-8 -*-
from bs4 import BeautifulSoup
import requests
if __name__ == "__main__":target = 'http://www.biqukan.com/1_1094/5403177.html'req = requests.get(url = target)html = req.textbf = BeautifulSoup(html)texts = bf.find_all('div', class_ = 'showtxt') print(texts)

在解析html之前,我们需要创建一个Beautiful Soup对象。BeautifulSoup函数里的参数就是我们已经获得的html信息。然后我们使用find_all方法,获得html信息中所有class属性为showtxt的div标签。find_all方法的第一个参数是获取的标签名,第二个参数class_是标签的属性,这里使用class_表示标签的class属性,class_后面跟着的showtxt就是属性值了。
但是在正文中有很多我们不想看到的空格,div标签等,这些如何去除呢:

from bs4 import BeautifulSoup
import requests
if __name__ == "__main__":target = 'http://www.biqukan.com/1_1094/5403177.html'req = requests.get(url = target) html = req.textbf = BeautifulSoup(html)texts = bf.find_all('div', class_ = 'showtxt')print(texts[0].text.replace('\xa0'*8,'\n\n'))

find_all匹配的返回的结果是一个列表。提取匹配结果后,使用text属性,提取文本内容,滤除br标签。随后使用replace方法,剔除空格,替换为回车进行分段。 在html中是用来表示空格的。replace(‘\xa0’*8,’\n\n’)就是去掉下图的八个空格符号,并用回车代替:于是,我们很自然的匹配到了所有正文内容,并进行了分段。


http://chatgpt.dhexx.cn/article/fO15fDaS.shtml

相关文章

最通俗、最详细的 Python3 网络爬虫入门指南

很多朋友学习Python都是先从爬虫开始&#xff0c;其原因不外两方面&#xff1a; 其一Python对爬虫支持度较好&#xff0c;类库众多&#xff0c;其二语法简单&#xff0c;入门容易&#xff0c;所以两者形影相随&#xff0c;不离不弃。 要使用python语言做爬虫&#xff0c;首先需…

Maven安装和配置本地仓库和阿里云镜像

maven安装配置换阿里源 1.下载maven 打开maven官网https://maven.apache.org/download.cgi&#xff0c;下载maven安装包&#xff0c;下载完成后解压到你想放的位置&#xff0c;不用安装 2.配置环境变量 3.配置阿里源和repository地址 打开刚才的解压文件conf文件夹下的setting.…

阿里云云效Maven仓库

一、Maven仓库概要 私服的目的&#xff1a;我们有一些自己的公用包&#xff0c;不想拉取工程编译&#xff0c;直接使用已经上传到私服的Jar包&#xff0c;在需要使用的项目工程直接引用使用&#xff0c;加速开发效率和编译效率。 阿里云仓库地址&#xff1a; 公用主仓库&#…

阿里云maven仓库的使用详解以及报错解决方法

仓库介绍 阿里云Maven中央仓库为 阿里云云效 提供的公共代理仓库&#xff0c;帮助研发人员提高研发生产效率&#xff0c;使用阿里云Maven中央仓库作为下载源&#xff0c;速度更快更稳定。阿里云云效是企业级一站式 DevOps 平台&#xff0c;覆盖产品从需求到运营的研发全生命周…

IDEA设置Maven阿里镜像仓库

1.打开IDEA安装目录&#xff0c;并进入如下相对路径 "\IntelliJ IDEA 2022.3.2\plugins\maven\lib\maven3\conf"。 2.打开settings.xml文件&#xff0c;并按照阿里官方指南插入配置项到指定位置。 2.1) 查看官方指南 2.2) 复制配置内容 <mirror><id>al…

IDEA中的maven阿里仓库配置

IDEA中的maven阿里仓库配置 1、进入官网&#xff1a; http://maven.apache.org/download.cgi 下载解压&#xff0c;然后记住解压位置 2、settings.xml配置更改 打开下载的文件 apache-maven-3.6.3 > conf> settings.xml&#xff08;图一为原文件&#xff0c;图二为配置…

gradle配置阿里Maven仓库

使用gradle编译一个开源项目时&#xff0c;发现下载依赖包比较慢,打开项目下的build.gradle文件: 可以看到并没有配置国内Maven仓库&#xff0c;那就配置一个呗,参照Gradle官方文档配置阿里Maven仓库 在build.gradle文件中修改repositories,也就是在mavenLocal()和mavenCentral…

maven配置阿里仓库

大家使用maven下载jar包会很慢&#xff0c;最主要的原因是maven的仓库在英国&#xff0c;但如果使用了阿里的仓库下载jar包就会变得很便捷。下面是如和配置阿里的仓库。 <mirror><id>alimaven</id><mirrorOf>central</mirrorOf><name>ali…

maven 配置阿里云仓库

目录 0. 前置工作&#xff1a;安装jdk1. 配置 maven 环境变量2. 配置阿里云镜像仓库3 idea中maven的相关配置 0. 前置工作&#xff1a;安装jdk 参考步骤 1 2 3 1. 配置 maven 环境变量 2. 配置阿里云镜像仓库 对解压后的maven的conf/settings进行编辑 本地仓库中没有的东…

Maven之阿里云镜像仓库配置

Maven 镜像 简介 阿里云Maven中央仓库为阿里云云效提供的公共代理仓库&#xff0c;帮助研发人员提高研发生产效率&#xff0c;使用阿里云Maven中央仓库作为下载源&#xff0c;速度更快更稳定。阿里云云效 是企业级一站式 DevOps 平台&#xff0c;覆盖产品从需求到运营的研发全生…

阿里云Maven仓库

文章目录 一、仓库介绍二、配置指南1. maven 配置指南2. gradle 配置指南 三、国内Maven仓库搜索地址四、Maven-Search插件使用1. 安装2. 使用 一、仓库介绍 阿里云云效 Maven 是什么 阿里云Maven中央仓库为 阿里云云效 提供的公共代理仓库&#xff0c;帮助研发人员提高研发生…

免费无损高品质音乐下载器V3.5

无损音乐下载器&#xff0c;今天朋友推荐给我的测试的一款 win 平台音乐下载软件&#xff0c;支持无损、超品、高品等音质的下载&#xff0c;此外它还支持在线播放 MV。这款软件经过测试还不错&#xff0c;适合喜欢高品质音乐的朋友。当然如果对于音乐品质没有太高要求还是推荐…

付费音乐下载。

墨灵音乐可以直接下载各大音乐app的付费音乐。 链接&#xff1a;https://music.mli.im/ 打开链接以后点击探索音乐就可以啦。然后进去如下界面。 接着搜索你想要下载的音乐。我们随便搜索一首歌曲。点击下载歌曲。之后会进去这个界面。然后右键点击另存为 就可以下载啦。

抖音歌曲免费下载

无损音乐下载网站http://regeku.top 1、搜索需要下载的歌曲&#xff0c;点击下载。 2、点击下载歌曲 3、点击下载 4、点击下载 5、保存到桌面 6、手机扫码关注&#xff0c;点击热歌下载

如何免费下载网易云收费音乐?不需会员也能做到

今天的主题&#xff0c;就是给大伙介绍个免费下载网易云音乐的收费音乐&#xff08;其他平台也适用&#xff09; 。简单实用&#xff0c;基本不需要什么计算机编程基础&#xff0c;人人都可学会&#xff01; 废话不多说&#xff0c;直接进入主题&#xff01; 先用谷歌浏览器打…

免费下载网易云音乐付费歌曲及下架歌曲

网易云音乐一直被大家称为良心软件、音乐软件神器等等。但是&#xff0c;现在使用网易云音乐听歌&#xff0c;发现好多的歌曲已经不能播放和下载了。会显示灰色&#xff0c;播放时会提示“由于版权保护&#xff0c;您所在的地区暂时无法使用。”或者是“因合作方要求&#xff0…

MusicTools下载 v3.4.0 全网免费无损音乐下载器

下载地址&#xff1a;点我 随着音乐版权越来越受到重视&#xff0c;我们在线听歌的限制也越来越大。在一个音乐平台上&#xff0c;我们无法听到所有歌手的作品&#xff0c;因为该平台可能没有某个歌手的版权。而且&#xff0c;由于很多内容都需要付费&#xff0c;我们也无法随心…

录音文件下载_如何免费下载受版权保护的收费音乐

在网易云&#xff0c;酷狗&#xff0c;酷我&#xff0c;QQ音乐&#xff0c;百度千千音乐中下载部分音乐时&#xff0c;会看到“版权方要求一载此歌曲需付费&#xff0c;开通会员畅享千万歌曲”的提示&#xff0c;这些歌曲只能在线播放&#xff0c;无法下载到电脑或优盘中&#…

超简单!用了这么多年浏览器,原来付费下载的歌曲原mp3就在眼皮底下!

这个在学习群其实我已经发过了&#xff0c;不过还是来发一下。 说明一下&#xff0c;实现这个目标&#xff0c;不需要Python。 大家应该不相信&#xff0c;怎么可能&#xff1f;就在眼皮底下&#xff0c;还不用Python&#xff1f;没错&#xff0c;就在你眼皮底下&#xff0c;也…

如何简单地通过网页下载付费音乐?

由于各种音乐版权的不可抗因素&#xff0c; 很多优质音乐只能在线试听却不能下载。 大部分人想要下载只能去网上搜各种云盘&#xff0c; 各种资源&#xff0c; 求分享。花了很多时间、精力也未必能下载的到。 如何简单地通过网页下载付费音乐&#xff1f; 注&#xff1a;不同…