Python数据解析bs4库使用BeautifulSoup方法示例

 更新时间:2023年08月21日 09:59:25   作者:YiYa_咿呀  
这篇文章主要为大家介绍了Python数据解析bs4库使用BeautifulSoup方法示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

1. 安装bs4库

pip install bs4

2. 使用beautiful soup

用法如下:

find_all:find_all找到所有符合条件的节点

find:find指的是找第一个符合条件的节点

calss_:因为和python中的关键字class重合,因此在后面加个_加以区分

attrs={"":""}:attrs的对象存储条件,此时的class无需加_

import requests
from bs4 import BeautifulSoup
import re
url = "http://www.crazyant.net/"
r = requests.get(url)
if r.status_code != 200:
    raise Exception()
html_doc = r.text
# 创建beautiful soup,将爬取的内容通过BeautifulSoup解析,这里告诉BeautifulSoup这个是爬取到的html页面,默认也是这个,但是会发出警告
soup = BeautifulSoup(html_doc,"html.parser")
# find_all找到所有符合条件的节点,find指的是找第一个
h2_nodes = soup.find_all("h2",class_="entry-title")

3. 使用bs4爬取优美图库的图片

from bs4 import BeautifulSoup
import requests
import time
url = "https://www.umei.cc/weimeitupian/oumeitupian/nvsheng.htm"
resp = requests.get(url)
resp.encoding = 'utf-8'
page = resp.text
soup = BeautifulSoup(page,'html.parser')
oAs = soup.find("div",class_='pic-list').find_all('a')
aLinks = []
for a in oAs:
    aLinks.append("https://www.umei.cc"+str(a.get("href")))
print(aLinks)
for link in aLinks:
    content = requests.get(link)
    content.encoding = 'utf-8'
    img = BeautifulSoup(content.text,'html.parser').find("div",class_='big-pic').find('img')
    src = img.get("src")
    print(img)
    print(src)
    img_name = src.split('/')[-1]
    img_resp = requests.get(src)
    with open('img/'+img_name,mode = "wb") as f:
        f.write(img_resp.content)
    time.sleep(1)
f.close()
resp.close()
img_resp.close()

结果:

以上就是Python数据解析bs4库使用BeautifulSoup方法示例的详细内容,更多关于Python bs4 BeautifulSoup的资料请关注脚本之家其它相关文章!

相关文章

  • 如何使用 profile 进行python代码性能分析

    如何使用 profile 进行python代码性能分析

    对代码优化的前提是需要了解性能瓶颈在什么地方,程序运行的主要时间是消耗在哪里,对于比较复杂的代码可以借助一些工具来定位,python 内置了丰富的性能分析工具,本文介绍如何使用profile进行python代码性能分析,感兴趣的朋友一起看看吧
    2024-12-12
  • python如何写出表白程序

    python如何写出表白程序

    在本篇文章里小编给大家分享的是一篇关于python实现表白程序的代码实例,需要的朋友们可以参考下。
    2020-06-06
  • Python如何从txt文件中提取特定数据

    Python如何从txt文件中提取特定数据

    这篇文章主要给大家介绍了关于Python如何从txt文件中提取特定数据的相关资料,有时我们会遇到需要按行读取文本的情况,我们要读取txt文件获得数据,需要的朋友可以参考下
    2023-08-08
  • 使用Django搭建web服务器的例子(最最正确的方式)

    使用Django搭建web服务器的例子(最最正确的方式)

    今天小编就为大家分享一篇使用Django搭建web服务器的例子(最最正确的方式),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • python Jieba分词处理详解【模式,词库的添加、删除,自定义词库,失败处理等】

    python Jieba分词处理详解【模式,词库的添加、删除,自定义词库,失败处理等】

    这篇文章主要介绍了python Jieba分词处理,结合实例形式详细分析了python 使用jieba分词的模式,词库的添加、删除,自定义词库,失败处理等相关操作技巧,需要的朋友可以参考下
    2023-07-07
  • Python装饰器入门学习教程(九步学习)

    Python装饰器入门学习教程(九步学习)

    装饰器(decorator)是一种高级Python语法。装饰器可以对一个函数、方法或者类进行加工。本文给大家介绍Python装饰器入门学习教程(九步学习),对python装饰器相关知识感兴趣的朋友一起学习吧
    2016-01-01
  • python matlibplot绘制多条曲线图

    python matlibplot绘制多条曲线图

    这篇文章主要为大家详细介绍了python matlibplot绘制多条曲线图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • python包相关知识点之包的导入、相对路径以及绝对路径

    python包相关知识点之包的导入、相对路径以及绝对路径

    Python的好处在于你不需要懂很多概念,你就有机会投入工作,同样问题也有机会随时发生,下面这篇文章主要给大家介绍了关于python包相关知识点之包的导入、相对路径以及绝对路径的相关资料,需要的朋友可以参考下
    2022-04-04
  • 详解Python如何使用并发模型编程

    详解Python如何使用并发模型编程

    这篇文章主要为大家详细介绍了如何让 Python 能够同时处理多个任务,即如何使用并发模型编程,文中的示例代码讲解详细,需要的可以参考一下
    2023-05-05
  • python编写计算器功能

    python编写计算器功能

    这篇文章主要为大家详细介绍了python编写计算器功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10

最新评论