Python 数据分析之Beautiful Soup 提取页面信息

作者:我是小白呀 时间:2022-04-30 04:34:10 

概述

数据分析 (Data Analyze) 可以在工作中的各个方面帮助我们. 本专栏为量化交易专栏下的子专栏, 主要讲解一些数据分析的基础知识.

Python 数据分析之Beautiful Soup 提取页面信息

Beautiful Soup

Beautiful 是一个可以从 HTML 或 XML 文件中提取数据的 Pyhton 库. 简单来说, 它能将 HTML 的标签文件解析成树形结构, 然后方便的获取到指定标签的对应属性.

Python 数据分析之Beautiful Soup 提取页面信息

安装:


pip install beautifulsoup4

例子:


from bs4 import BeautifulSoup

# 创建一段HTML代码
html_content = """
<html>
<head>
<title>我是小白呀的博客</title>
</head>
<body>
<p class="redColor">个人介绍</p>
</body>
</html>
"""

# 生成soup
soup = BeautifulSoup(html_content, "html.parser")

# 调试输出
print(soup.title)  # 标题
print("name:", soup.title.name)
print(soup.head)  # 头部
print("name:", soup.head.name)
print(soup.p)  # 段落
print("name:", soup.p.name)
print("class:", soup.p.attrs)

输出结果:

<title>我是小白呀的博客</title>
name: title
<head>
<title>我是小白呀的博客</title>
</head>
name: head
<p class="redColor">个人介绍</p>
name: p
class: {'class': ['redColor']}
class: ['redColor']

提取页面信息

例子:


from urllib import request
from bs4 import BeautifulSoup

# 网页
url = "https://iamarookie.blog.csdn.net/"

# 发送请求
response = request.urlopen(url)

# 获取内容
html_content = response.read().decode("utf-8")

# 生成soup
soup = BeautifulSoup(html_content)

# 解析博客名字
blog_name = soup.find("div", attrs={"class":"user-profile-head-name"}).text
print("博客名字:\n", blog_name)

# 解析博客签名
blog_signature = soup.find("div", attrs={"class":"user-profile-head-introduction"}).text
print("博客签名:\n", blog_signature.strip())

输出结果:

博客名字:
我是小白呀 码龄2年
博客签名:
吾本布衣, 出自纽约, 四周大山. 箪瓢屡空, 环堵萧然, 不弊风日. 吾好读书, 滴水石穿, 笨鸟先飞, 求知不断, 方能立足. 不羡孔北海之座上客常满, 但求吾辈架上书常在. 涸辙遗鲋, 暮成枯, 人而无志, 与彼何殊. Self-study Computer Science. 愿为 open source 自效微力. 天高地阔,欲往观之. 因为啥也不会, 默默做一只小白

Python 数据分析之Beautiful Soup 提取页面信息

来源:https://blog.csdn.net/weixin_46274168/article/details/120793565

标签:Python,Beautiful,Soup,数据分析
0
投稿

猜你喜欢

  • python实现多张图片拼接成大图

    2021-11-19 08:36:53
  • pytorch 运行一段时间后出现GPU OOM的问题

    2021-05-21 17:01:34
  • django之状态保持-使用redis存储session的例子

    2023-07-29 20:14:07
  • python 工具类之Queue组件详解用法

    2023-08-05 23:59:10
  • python tkinter实现界面切换的示例代码

    2023-12-29 15:54:35
  • Python实现求解一元二次方程的方法示例

    2023-09-15 03:29:41
  • Bootstrap实现响应式导航栏效果

    2023-08-13 15:32:13
  • vue @click @tap重叠事件区分方式

    2024-05-10 14:10:04
  • JS 去前后空格大全(IE9亲测)

    2013-08-22 13:01:43
  • Python 平方列表中每个数字的多种操作

    2023-11-14 03:53:00
  • mysql 忘记root密码

    2010-12-14 14:50:00
  • javascript实现多栏闭合展开式广告位菜单效果实例

    2024-04-29 14:07:44
  • python使用requests实现发送带文件请求功能

    2023-11-03 14:23:13
  • python计算两个地址之间的距离方法

    2023-09-01 01:40:59
  • Oracle数据库安全策略分析 (三)

    2010-07-31 13:24:00
  • nicedit 轻量级编辑器 使用心得

    2023-03-03 23:49:08
  • Python双链表原理与实现方法详解

    2023-10-10 20:55:40
  • django将网络中的图片,保存成model中的ImageField的实例

    2023-12-23 01:11:33
  • Request.ServerVariables应用实例

    2008-03-11 11:57:00
  • python 函数的缺省参数使用注意事项分析

    2021-08-23 05:09:02
  • asp之家 网络编程 m.aspxhome.com