我有以下html结构:
<ol>
<li>...</li>
<div>...</div>
<li>...</li>
</ol>
当我执行以下操作时:
for e in doc.find('ol').children:
print(e.text)
我得到两个lidiv
我怎么做才能让它们都按正确的顺序排列?
你的脚本开始工作了,你可以稍微调整一下,只打印标签的文本:
for e in soup.find('ol').children:
if e.name:
print(e.text)
from bs4 import BeautifulSoup
html='''
<ol>
<li>...li1</li>
<div>...div</div>
<li>...li2</li>
</ol>
'''
soup = BeautifulSoup(html, 'html.parser')
for e in soup.find('ol').children:
if e.name:
print(e.text)
输出...li1
...div
...li2
from bs4 import BeautifulSoup
html='''
<ol>
<li>...li1</li>
<div>...div</div>
<li>...li2</li>
</ol>
'''
soup = BeautifulSoup(html, 'html.parser')
for e in soup.find('ol').children:
if e.name:
print(e.text)
...li1
...div
...li2