篇文章主要介紹了Python的爬蟲包Beautiful Soup中用正則表達式來搜索的技巧,包括使用正則表達式去搜索多種可能的關(guān)鍵字以及查找屬性值未知的標(biāo)簽等,需要的朋友可以參考下 Beautiful Soup使用時,,一般可以通過指定對應(yīng)的name和attrs去搜索,,特定的名字和屬性,,以找到所需要的部分的html代碼,。 但是,,有時候,,會遇到,,對于要處理的內(nèi)容中,其name或attr的值,,有多種可能,,尤其是符合某一規(guī)律,此時,,就無法寫成固定的值了,。 所以,就可以借助正則表達式來解決此問題,。 對應(yīng)的BeautifulSoup代碼如下: 而如果html是這種: 那么想要一次性地找到所有的,符合條件的h1的部分的代碼,,則之前的寫法,,就只能找到單個的class="h1user"的部分,剩下的兩個 和 就找不到了,。 那么,,此時,,就可以用到,BeautifulSoup中非常好用的,,非常強大的功能: attrs中支持正則表達式的寫法 了,。 就可以寫成: 就可以一次性地,找到: 了,。 之類的標(biāo)簽,,xxx的內(nèi)容未知(可變)的前提下
想要查找到對應(yīng)的此div標(biāo)簽,之前不知道如何實現(xiàn),。 則xxx必須寫出來,如果不寫出來屬性值,,也就沒法用上attrs了,,就沒法實現(xiàn)此處查找特性屬性值的標(biāo)簽了。
可以通過: 去查找到屬性包含aria-lable的div標(biāo)簽的,。 所以,,對于上面的,之前不知道如何處理: 用BeautifulSoup查找未知屬性值,,但是已知屬性的名字的標(biāo)簽 則此處,,就可以針對: 去用: 就可以查找到對應(yīng)的包含屬性aria-lable的div標(biāo)簽了。 |
|