天天看點

python使用BeautifulSoup 解析HTML

1,引入

from bs4 import BeautifulSoup  # 導入bs4庫
           

2,建立解析對象

soup = BeautifulSoup(self.res_content, "html.parser")  # html.parser是解析器,也可是lxml
           

3,擷取對象中的标簽對象

soup.table.tbody  直接通過.标簽名來擷取對象

find_all()擷取所有子對象,結果是個清單

all_tds[6].text标簽對象.text是擷取節點下的文本内容,注意不包括子節點Tag标簽本身。

for tr in soup.table.tbody:
      all_tds = tr.find_all("td")
      medial_title = all_tds[6].text
      if any(key_w in title_ for key_w in key_words):
                req = all_tds[0].text
                ad_date = all_tds[1].text
                ad_owner = all_tds[2].text
                showid = all_tds[4].text
                ad_type_ = all_tds[5].text
                ad_type = TdierMap(all_tds[5].text).map_tier_name()
                ad_link = all_tds[8].text