【class4】爬虫基础

接上节课内容,了解内容定位:

1.右键【检查】

2.用鼠标点击右上角的箭头

3.

find_all()

代码的作用

BeautifulSoup 中的 find_all() 函数,可以根据标签名,获取soup中的节点。

例如:

BeautifulSoup 对象

变量 soup 是一个 BeautifulSoup 对象,调用 soup 使用 find_all() 函数就能查找 HTML 中的内容。

find_all()函数

find_all() 函数可以查询 soup 中所有符合条件的元素,组成一个列表赋值给ps。

name参数

find_all(name="标签") 根据标签名查询节点
示例代码中,如果我们想要获取 h1 标签所在的节点,可以在 find_all() 中,传入 name 参数,其参数值为 h1 。
由于 name 可以省略,我们也可以直接传入参数值。

赋值变量

将返回的结果,赋值给一个变量。输出的结果是包含所有 h1 节点的列表。

编写简单代码,实现提取<em></em>中的内容

PS:find_all() 返回的是一个列表

由于 find_all() 返回的是一个列表,我们不能直接调用 .string 属性。
我们需要使用 for 循环遍历列表,获取每一个节点字符串再来调用 .string 属性获取节点中的标签里的内容

# 使用import导入requests模块

import requests

# 从bs4中导入BeautifulSoup模块

from bs4 import BeautifulSoup

# 将URL地址赋值给变量url

url = "https://nocturne-spider.baicizhan.com/2020/08/07/1/"

# 将变量url传入requests.get(),赋值给response

response = requests.get(url)

# 将服务器响应内容转换为字符串形式,赋值给html

html = response.text

# 使用BeautifulSoup()读取html,添加lxml解析器,赋值给soup

soup = BeautifulSoup(html, "lxml")

# 使用find_all()查询soup中em的节点,赋值给content_all

content_all = soup.find_all(name="em")

# for循环遍历content_all

for content in content_all:

    # 获取每个节点中标签内的内容,赋值给contentString

    contentString = content.string

    # 使用print输出contentString

    print(contentString)

PS:windows系统使用Ctrl+F

代码总结:

Import requests

From bs4 import BeautifulSoup

url=“http://+地址+/”

response=request.get(url)//找到网页

html=response.text//转化字符串

soup=BeautifulSoup(http,“lxml”)//将HTML标准化

content_all=soup.find_all(name=”p”)

for content in content_all:

contentSoup=content.string//提取文字内容

print(contentSoup)

下节课,我们继续了解string的不同应用

总结:

1. 导入 BeautifulSoup 
2. 使用 BeautifulSoup() 函数对相应内容进行解析;
3. 使用 find_all() 提取网页节点。

过程:

1. 向网页发送请求,获取网页源代码;
2. 导入新的模块,解析网页源代码;
3. 查看网页中的数据节点;
4. 解析内容,提取节点的数据;
5. 学习查找节点的方法,提取节点中的内容。

看一看有什么不记得的内容,这是前几天的内容,多复习一下。

我们选择用边写项目边学习的方法来具体了解爬虫中的简单知识点。到最后一个项目的时候,大家就能够对 多数的网页 去爬取自己所需要的信息。

欢迎大家学习和交流!!

夜曲打卡第四天

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值