0. 前言
在介紹BeautifulSoup模塊前, 我們先分析一下我們要爬取的網(wǎng)頁結(jié)構(gòu)是什么樣的佣盒。通常網(wǎng)頁都包含層疊樣式表(英文全稱:Cascading Style Sheets)肺樟,例如檐春。 推薦使用谷歌瀏覽器或者火狐瀏覽器方便快捷查看網(wǎng)頁結(jié)構(gòu)。例如在chrome中百度首頁右擊么伯,選擇'inspect'疟暖,即可查看到網(wǎng)頁結(jié)構(gòu),以及各個(gè)標(biāo)簽層級關(guān)系。
image
1. 創(chuàng)建爬蟲爬取網(wǎng)頁
爬取網(wǎng)站:url =www.pythonscraping.com/pages/warandpeace.html
網(wǎng)頁如圖所示俐巴,有紅色和綠色字體骨望。在綠色字體處右鍵選擇“inspect”分析標(biāo)簽結(jié)構(gòu)可知。綠色字體均包含在標(biāo)簽GreenText當(dāng)中窜骄。
image
1.1 抓取網(wǎng)頁
from urllib.request import urlopen
from bs4 import BeautifulSoup
url ='http://www.pythonscraping.com/pages/warandpeace.html'
html= urlopen(url) #抓取了該url網(wǎng)頁
soup = BeautifulSoup(html) #使用BeautifulSoup對網(wǎng)頁進(jìn)行解析
name_list = soup.find_all("span",{'class': 'green'})#find_all抓取所有綠色字體锦募,返回list
for name in name_list:
print(name.get_text()) #get_text()函數(shù)剔除字符串中所有tag符號只保留tag中包含的文本