bs4.BeautifulSoup 模块

Beautiful Soup 4.2.0 文档

安装:

pip install bs4
  • 需要将pip源设置为国内源
  • windows 在地址栏敲 %appdata%,新建一个文件夹叫pip,写一个pip.ini。
[global]
timeout = 6000
index-url = https://mirrors.aliyun.com/pypi/simple/
trusted-host = mirrors.aliyun.com

使用:

bs4包的BeautifulSoup模块 是一个选择器

from bs4 import BeautifulSoup

使用方式:BeautifulSoup可以将一个html文档转化成指定对象,然后通过对象的方法或者属性去查找指定的内容

1)转化本地文件:

soup = BeautifulSoup(open("本地文件"),"lxml")

2)转化网络文件:

soup = BeautifulSoup("字符串类型或者字节类型","lxml")

 

常用方法:

1) 根据标签名查找
    soup.a    只能找到第一个符合要求的标签
2) 获取属性
    soup.a["属性名,如 href"]
    soup.div.a.attrs    # 获得所有的属性和值,字典形式  soup.div.a.attrs["属性"] 等同于上面
3) 获取内容
    soup.div.a.text           # 定位的所有文本内容
    soup.div.a.string    # 只有标签内是只有(直系)文本内容才可以获取到,否则就是None
    soup.div.a.get_text()
4) find
    soup.find("a")    # 找到第一个 a
        还可以寻找指定标签:
            <li><a href="#" id="miao">a</a></li>
            print(soup.find("a",id="miao"))    # 不能根据class 去寻找,需要使用 class_ 
    find方法大不仅soup可以调用,普通的div对象也可以调用,去指定的div里面去查找符合要求的节点
    find得到的都是第一个符合要求的标签
5) find_all
    soup.find_all("a")    # 返回一个指定节点内所有满足(a标签)的列表。
    soup.find_all(["a","p"])    # 返回一个指定节点内所有满足(a标签和p标签)的列表。
    soup.find_all("a",limit=2)    # 返回一个指定节点内所有满足(a标签)的列表 的前两个。
6) select
    soup.select(".tang ul li #miao")    # 里面的语句就可以按照 css中的选择器进行查找    返回的是列表,需要通过下标提取指定的对象,然后获取属性和节点
    普通方法也可以调用,找到都是这个对象下面符合要求的所有的节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值