基于pycharm的beautifulsoup4庫使用方法教程
1.beautifulsoup4庫安裝
第一步:在控制臺輸入如下命令,安裝beautifulsoup4庫。
pip install beautifulsoup4
第三步:在pycharm
中,點擊file
——settings
——project
——python interpreter
——點擊+號——搜索beautifulsoup4
——install package!
這樣就可以在.py文件中導(dǎo)入模塊了!
2.beautifulsoup4庫使用
import requests # 雖然庫名叫做beautiful4 但是在導(dǎo)入時 使用的是其縮寫bs4 其中BeautifulSoup是一個類名 from bs4 import BeautifulSoup url = 'https://www.baidu.com/s?' # 由于一般網(wǎng)站都是供用戶訪問 如果檢測到User-Agent是黑客或者其他可能拒絕訪問 故此處模擬瀏覽器 headers = { ? ? 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36' } response = requests.get(url=url, headers=headers) # 以防亂碼 此處將其編碼設(shè)置為utf-8 因為有中文 response.encoding = 'utf-8' # print(response.text) # 使用的解析器是html.parser 注意是.奧 soup = BeautifulSoup(response.text, 'html.parser') # 打印解析后的結(jié)果 print(soup.prettify())
需要講解的都在代碼注釋中了奧!
3.beautifulsoup4庫基本元素
beautifulsoup4
庫是解析、遍歷、維護(hù)“標(biāo)簽樹”的功能庫。
首先來看BeautifulSoup
庫解析器,前兩個比較常用!
在上述代碼的基礎(chǔ)上,增加如下幾行,結(jié)合基本元素的使用,可得到如圖所示。
需要注意的是,.string
可以跨標(biāo)簽,所以很有可能結(jié)果也為注釋,為了區(qū)分是標(biāo)簽內(nèi)的字符串還是注釋,可以通過打印類型來判斷。
接下來,看一下BeautifulSoup
庫的遍歷,其中畫紅框的迭代遍歷,可以用于for in循環(huán)中。
4.beautifulsoup4庫的HTML查找方法
find_all( name , attrs , recursive , string , **kwargs )
find_all()
方法搜索當(dāng)前tag
的所有tag
子節(jié)點,并判斷是否符合過濾器的條件。
name
參數(shù)可以對名字為 name 的標(biāo)簽進(jìn)行檢索。
attrs參數(shù)可以對標(biāo)簽屬性值為attrs的標(biāo)簽進(jìn)行檢索。
recursive參數(shù)表示是否對子孫全部檢索,默認(rèn)是TRUE,如果只想搜索當(dāng)前節(jié)點的兒子信息,可以置其為FALSE。
string 參數(shù)可以標(biāo)簽中的字符串內(nèi)容進(jìn)行檢索。
5.補(bǔ)充Json(Javascript Object Notation)
我們學(xué)過js的或者java的,應(yīng)該對Json不陌生吧!
Json是一種有類型的鍵值對!
需要注意的是,鍵和值都需要用"“括起來,如果值是整數(shù),則可以不用”"!
如果值是多值,則可以用[,];如果值是鍵值對,則可以用{:,:,},可以嵌套使用。
JSON一般用于接口,而YAML是無類型鍵值對,一般用于配置文件。
到此這篇關(guān)于基于pycharm
的beautifulsoup4
庫使用方法教程的文章就介紹到這了,更多相關(guān)pycharm
的beautifulsoup4
庫使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決python gdal投影坐標(biāo)系轉(zhuǎn)換的問題
今天小編就為大家分享一篇解決python gdal投影坐標(biāo)系轉(zhuǎn)換的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01python實現(xiàn)逆波蘭計算表達(dá)式實例詳解
這篇文章主要介紹了python實現(xiàn)逆波蘭計算表達(dá)式的方法,較為詳細(xì)的分析了逆波蘭表達(dá)式的概念及實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-05-05Python即時網(wǎng)絡(luò)爬蟲項目啟動說明詳解
這篇文章主要為大家詳細(xì)介紹了Python即時網(wǎng)絡(luò)爬蟲項目啟動說明,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-02-02python中DataFrame數(shù)據(jù)合并merge()和concat()方法詳解
Pandas提供了很多合并Series和Dataframe的強(qiáng)大的功能,通過這些功能可以方便的進(jìn)行數(shù)據(jù)分析,下面這篇文章主要給大家介紹了關(guān)于python中DataFrame數(shù)據(jù)合并merge()和concat()方法的相關(guān)資料,需要的朋友可以參考下2022-07-07