BeautifulSoup_lxml解析

def parseHtml(html):
    soup = BeautifulSoup(html, 'lxml')
    # print(soup.prettify)格式化輸出
    # items = soup.find_all('div', attrs={'class': 'news-list-b'})
    # items = soup.select('Tag')#CSS選擇器
    # items = soup.select('.class')屬性
    # items = soup.select('#id')ID
    # items = soup.select('Tag[attr="屬性值"]')標籤+屬性
    # items = soup.select('.class Tag #id')空格表示子節點,組合使用
    # items = soup.select('Tag').text取文本
    # items = soup.select('Tag').get_text()取文本
    # tag.get('className')取標籤屬性
    # tag['className']取標籤屬性
    # tag.attrs.get('className')取標籤屬性
    items = soup.select('.news-list-b .list .item .title a')
    for item in items:
        yield item.get('href')#attrs字典取屬性

CSS選擇器 子串匹配 模糊匹配html

soup = BeautifulSoup(html, 'lxml')
trs = soup.select('#table_live tr[id*="tr1"]')
#id包含「tr1」字符串的tr標籤
#soup.select('tag[attr="屬性值"]') #標籤+屬性
tags = soup.select('li[id^="newsLi"]') #標籤+屬性,id屬性以newsLi開頭
tags = soup.select('li[id$="newsLi"]') #標籤+屬性,id屬性以newsLi結尾
tags = soup.select('li[id*="newsLi"]') #標籤+屬性,id屬性包含newsLi

 select帶有空格的classspa

#div class=’content-list latest-content’
#div class=’content-list hot-content’

tags = soup.select('div.content-list.latest-content')
相關文章
相關標籤/搜索