python之BeautifulSoup标签查找数据

BeautifulSoup常用查询方法归类:

import urllib.request

from bs4 import BeautifulSoup

bs = BeautifulSoup(html,"html.parser")

一、四类主要节点

bs.title #通过标签获取标签 Tag

bs.title.string或bs.title.get_text() #通过标签获取标签里面的内容 NavigableString

bs.a.attrs #获取标签里面的所有属性

bs #获取文档所有内容 BeautifulSoup

二、文档的遍历

contents:contents属性可以将tag的子节点以列表的形式输出(不止tag还有navgableString)

for item in bs.head.contents:

    print(item)

三、文档的搜索

#find_all通过字符串匹配某个标签,返回一个列表

a_list = bs.find_all('a')

#通过正则表达式搜索标签,返回一个列表

b_list = bs.find_all(re.compile('a'))

#通过kwargs传入的参数查询

d_list = bs.find_all(id='doubanapp-tip')

d_list = bs.find_all(class_True)

d_list = bs.find_all(href="https://www.baidu.com")

#通过text参数查询

e_list = bs.find_all(text='豆瓣')

e_list = bs.find_all(text=['泰坦尼克号','赎罪'])

e_list = bs.find_all(text = re.compile('\d'))

#通过limit限制显示数据数量

f_list = bs.find_all('a',limit=3)

四、CSS选择器

#1.通过标签查询

g_list = bs.select('a')

#2.通过类名查询

g_list = bs.select('.title')

#3.通过id查询

g_list = bs.select('#tip')

#4.通过属性查询

g_list = bs.select("a[class='tip']")

#5.通过子标签来查询

g_list = bs.select("head > meta >title")

#6.通过兄弟节点查询

g_list = bs.select("meta ~ link")

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值