bs4初级应用

import requests
from bs4 import BeautifulSoup
res = requests.get(url = "https://movie.douban.com/top250",headers={'User-Agent': 'BaiduSpider'})
# 此时的res返回的是状态码
# print(res)

# 加载到BeautifulSoup中的对象必须是html类型的对象,
soup = BeautifulSoup(res.text,'html.parser')
# print(soup)

# 提供用于解析的方法和属性
# print(soup.div.li)   #返回文档中第一次出现的div.li对应的标签
# print(soup.find('li'))   #等同于soup.li

# 返回所有的符合要求的标签(列表)
# print(soup.find_all('div',class_='pic'))


# 层级选择器
# print(soup.select('div'))    #返回一个列表
# print(soup.select('div>a>span'))    #   > 表示一个层级
# print(soup.select('div span'))      # 空格 表示多个层级

# 获取标签中间的文本
# 文本的获取要落实到每一个标签上,所以需要遍历获得的列表
# text/get_text() 可以获取某一个标签周昂所有文本内容
# string   只能获得该标签下面直系的文本内容


# 获取标签中的属性值
print(soup.div.a['href'])     #只返回第一个,相当于find
print(soup.find_all('a',"href"))

# 获取属性
for ul in soup.find_all('div',class_='hd'):
    print(ul.a['href'])


# for ul in soup.select('a'):
#     print(ul['href'])
#

# # 使用find_all来定位
# # print(soup.find_all(class_="title"))
#
# # 使用select来定位
# print(soup.select(".title")[0].get_text())      #类标签
#    要获取到文本信息必须要落实到每一个定位位置上,在集合中不能转变文本

# print(soup.select(".hd > a > span"))
# print(soup.select(".hd span"))       #    > 标识一个层级,空格表示多个层级
#
#
# #获取属性
# print(soup.a['href'])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值