Beautiful Soup 如何獲取到href

2022-08-28 23:24:21 字數 992 閱讀 8108

直接上**, 你需要修改一下黃色的部分。

from bs4 import beautifulsoup
import requests

main(url):

html = requests.get(url, timeout=30) #獲取網頁

soup = beautifulsoup(html, 'lxml') #獲取lxml樹

litags = soup.find_all('li', attrs=)#獲取li標籤,類名為aaa

comments =  #初始化乙個陣列,存放每個li中需要儲存的項
for li in litags: # 迭代器獲取每個標籤的屬性值
comment['href'] =li.find('a', attrs=, href = true).attrs['href']) #找到a標籤下,類名為bbb,屬性值
comment['title'] =li.find('a', attrs=, href = true).attrs['title']) #找到a標籤下,類名為bbb,屬性值
comment['text'] = li.find('span',attrs=).text.strip() #獲取span標籤下,類名為ccc的文字

一般來說,網頁中li標籤下的內容,是我們想要的,所以:

1、把所有li標籤提取出來, li 可以通過class, id, name, title等等方式匹配。

2、迭代的方式,在每個裡標籤下,把你想要的標籤下內容提取出來,除了class標籤,其他的所有標籤值都是可以提取出來的,包括title, id, name, ...

標籤下有用的內容,有兩種獲取方式:

.attrs 和 .text

需要注意的是,標籤匹配的時候,需要把空格去掉。例如: ' aaa'和'aaa'不是同樣的標籤,如果' aaa', 可能導致匹配不成功。

BeautifulSoup常用方法

1.初始化 2.查詢指定標籤 eg 要找到符合的所有標籤 p.findall div 反覆利用標籤特徵可以找到最終需要的標籤 3.直接加標籤名可以找到所有子標籤 eg 找到所有標籤 p.td 4.直接以字典形式,可以訪問標籤內對應屬性的值 eg 要找到 中href 的值 www.csdn.net p...

BeautifulSoup學習筆記

prettify 將html 格式化 get text 獲得所有文字內容 contens 返回所有子節點 children 返回子節點生成器 descendants 返回所有子孫節點的生成器 strings 返回包含的多個字串的生成器 stripped strings 返回包含的多個字串 去除多餘空...

爬蟲 BeautifulSoup 模組

二 根據這個dom樹就可以按照節點的名稱 屬性和文字搜尋節點 find all 方法會搜尋出所有滿足要求的節點,find 方法只會搜尋出第乙個滿足要求的節點 兩個方法的引數一模一樣 三 得到節點以後,就可以訪問它的名稱 屬性 文字。a為標籤名稱 超連結 href,class為屬性,顯示在頁面上的是p...