我正在抓取一些HTML结构如下:
<span class="ThreadPrime"><a href="url1">Post title 1</a></span>
<span class="ThreadInfo"><a href="url2">Reply title 2</a></span>
给定文档中所有标记的循环,如果标记的父级具有某个CSS类,在这种情况下为ThreadPrime,我想有条件地进行分支。
这是我正在尝试使用的检查(thisATag是find_all循环中的当前迭代器)。
if thisATag.parent.get("class")=="ThreadPrime"
然而,这种情况似乎从未评估为真。如果我将这个ATag.parent.get(“class”)打印到python控制台,我得到
[u'ThreadPrime']
[u'ThreadInfo']
我不确定在条件中要比较什么。我尝试了“[u'TreadPrime']”和'ThreadPrime',但似乎没有一个匹配。
答案 0 :(得分:1)
您正在将unicode字符串与已解码的字符串进行比较。有关Unicode类型的信息,请参阅this。试试这个:
my_string = (thisATag.parent.get("class")).decode('utf-8')
if my_string=="ThreadPrime"