當我們成功獲取網頁後,該如何「分析這個網頁」才是更重要的一點。
HTML(HyperText Markup Language) 是一種標記語言,可以分成標籤跟資料兩類,使用標籤來決定這個資料要顯示在網頁對應的功能與位置。
所謂的標籤就是像 <title> </title>
這樣表示範圍,以 <title>
做為開始,</title>
做為結束,在這中間就可以擺放需要的資料。
先前已經完成獲取網頁這項任務,接下來就要使用 Beautiful Soup 這個模組來解析 HTML 的網頁內容。那麼一樣先來安裝他吧!一樣開啟終端機輸入以下指令就可以完成安裝
pip install beautifulsoup4
如果是在 Anaconda 環境下可以使用以下指令進行安裝:
conda install -c anaconda beautifulsoup4
而這個模組有幾個比較重要的函式如下:
BeautifulSoup(html, 'html.parser')
以上程式中的參數 html 是 HTML 格式的字串,我們要將他轉換成 Python 的物件才可以繼續做處理。
BeautifulSoup.find_all(tag)
BeautifulSoup.find_all(tag, attr)
以上程式主要是為了找出標籤為「tag」的所有元素。若參數「attr」存在(line 2 所示),則要找出標籤為「tag」且屬性也符合「attr」要求的所有元素。
tag.contents
上述程式是為了找出第一個遇到標籤為「tag」的內容。
tag.name
以上會找出第一個遇到標籤為「tag」所對應的標籤名稱。
tag['attr']
以上程式會找出第一個遇到標籤為「tag」且屬性為「attr」的值。