from bs4 import BeautifulSoup
html='''
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
<ul>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
</ul>
<ul>
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
</ul>
'''
n = 30
# 设置-----的长度值, 没意义就是为了清晰一点
res = BeautifulSoup(html,'html.parser')
ul_1_li = res.find('ul').find_all('li')
# 找到第一个ul标签下的所有li标签
print('--' * n)
print('打印第一个UL标签下的LI内容')
for i in ul_1_li:
# 遍历这个ulli, 把内容提取出来
print(i.text)
print('--' * n)
ul_all = res.find_all('ul')
# 找到所有的ul标签, 形成一个列表
print('--' * n)
print('打印UL下的原样文本, 相当于UL标签以及下级对应的HTML源码')
for i in ul_all:
# ul_all形成一个TAG的列表, 遍历列表, 打印列表内字符串
print(i)
# 这样可以打印出所有ul标签下的文本, 相当于对应的html源码
print('--' * n)
print('--' * n)
print('打印所有UL标签下的所有LI内容')
for i in ul_all:
# ul_all形成一个TAG的列表, 遍历列表, 相当于3个ul标签包含的内容
li_all = i.find_all('li')
# 遍历这个列表以后, 相当于每个ul下的所有li再形成一个包括li的TAG的列表
# 遍历这个列表以后, 相当于每个ul下的所有li再形成一个包括li的TAG的列表
for j in li_all:
# 遍历li的TAG的列表, 把内容提取出来
print(j.text)
print('--' * n)