beautifulsoup的用法
(1)创建一个requests类
import requests
from bs4 import BeautifulSoup
#(1)创建一个requests类
url='https://www.shanghairanking.cn/rankings/bcmr/2021/080901'
r=requests.get(url)
try:
r.raise_for_status()
r.encoding=r.apparent_encoding
#print(r.text)
except:
print('响应异常')
(2)页面解析—熬制一锅美味汤
创建beautifulsoup对象->搜索节点->访问节点名称/节点属性值/节点文字
#(2)页面解析---熬制一锅美味汤
#创建一个beautifulsoup类
soup=BeautifulSoup(r.text,'html.parser')
#搜索节点
#<beautifulsoup类>.find(节点名称/节点属性值/节点文字)
#<beautifulsoup类>.find_all(节点名称/节点属性值/节点文字)
name,rank=[],[]
name=soup.find_all(class_="name-cn")
rank=soup.find_all(class_="rank-box")
tags=soup.find_all(class_="tags")
#访问节点
print("{0:^10}\t{1:{3}<10}\t{2:^10}".format('评级','排名','学校名称',' '))
for a,r,t in zip(name,rank,tags):
print("{0:^10}\t{1:{3}<10}\t{2:^10}".format(t.string,r.string.strip(),a.string,' '))
几个简单的浏览结构化数据的方法:
#几个简单的浏览结构化数据的方法:
print(soup.title)
print(soup.title.name)
print(soup.title.string)
print(soup.title.parent.name)
print(soup.p)