擅长:python、mysql、java
<p>我用换行符格式化了您的html,以帮助说明为什么4没有打印到您期望的位置。在</p>
<p>您正在迭代的子类,并从属于类“work”的任何子级打印文本。数字4不符合这个标准,因为它是文本,而不是一个有“工作”类的孩子。在</p>
<p>我不认为beauthulsoup能像您期望的那样解码这个特定的html。在</p>
<p>一种解决方案是自己解析html,因为这不是一种典型的情况。一种方法可能是使用regex来查找类似以下内容的实例:</p>
<pre><code></span>(not_blank)<span class="{classregex}">(remember)</span>
</code></pre>
<p>建立一个{记住:不是空的}的字典。当你循环时身体。孩子们根据此词典()验证文本。如果是键,则打印该值,然后打印s.text()。在</p>
<p>根据实际的html是什么,这可能会工作。。。在</p>