python四周實(shí)戰(zhàn)1.02——BeautifulSoup

wow!壶硅! beautiful soup威兜!

這次的練習(xí)是爬取本地網(wǎng)頁,但是在剛開始使用beautifulsoup的時候就給了我一個老大的難題森瘪,沒安裝lxml庫牡属,按照課前預(yù)習(xí)的安裝了也安裝失敗票堵,后來還是在知乎找到了解決方法扼睬,呃,雖然好像不是那么程序猿悴势,但是能抓到老鼠就是好貓了窗宇。和群里老師私聊說是第一周直播的時候有講過這個問題,看來不能光看課程特纤,還是得回去再看一遍直播去军俊。
下面是代碼,后來發(fā)現(xiàn)跟答案的selector路徑不是很一樣捧存,還得再細(xì)細(xì)琢磨一下粪躬,我的刪的太過分了担败,好在這個網(wǎng)頁比較簡單沒出錯。

from bs4 import BeautifulSoup

with open('./index.html','r')as wb_data:
    soup=BeautifulSoup(wb_data,'lxml')

    images = soup.select('body > div > div > div > div > div > div > img')
    titles = soup.select('body > div > div > div > div > div > div > div > h4 > a')
    prices = soup.select('body > div > div > div > div > div > div > div > h4.pull-right')
    stars  = soup.select('body > div > div > div > div > div > div > div > p:nth-of-type(2)')
    views  = soup.select('body > div > div > div > div > div > div > div > p.pull-right')

for title,image,star,view,price in zip(titles,images,stars,views,prices):
    data = {
        'title':title.get_text(),
        'price':price.get_text(),
        'star' :len(star.find_all('span','glyphicon-star')),
        'view' :view.get_text(),
        'image':image.get('src')
    }

    print(data)

這是下載的CSS selector路徑:

    titles = soup.select("body > div > div > div.col-md-9 > div > div > div > div.caption > h4 > a")
    images = soup.select("body > div > div > div.col-md-9 > div > div > div > img")
    reviews = soup.select("body > div > div > div.col-md-9 > div > div > div > div.ratings > p.pull-right")
    prices = soup.select("body > div > div > div.col-md-9 > div > div > div > div.caption > h4.pull-right")
    stars = soup.select("div > div.ratings > p:nth-of-type(2)")

總結(jié):

  1. 基本的安裝庫還得回去再看看直播镰官,打造最合適的python環(huán)境有助于提高效率提前。

  2. CSS selector的路徑選擇怎么樣比較科學(xué)和合理還得再研究。

    1.BeautifulSoup不支持nth-child語法

  3. 另外是對于文件路徑的設(shè)置:

相對路徑,確保index.html和main.py在同一個文件夾
相對路徑可以方便代碼拷貝泳唠,移動到其他文件夾不需要修改代碼
path = './index.html'

設(shè)置一個path變量保存路徑是很聰明的做法狈网。

4.find_all()用來篩選挺好用的,不過沒想到用len()函數(shù)統(tǒng)計★個數(shù)笨腥,借鑒了一下答案拓哺。思路還是不夠開闊和專業(yè)。

5.用with語法來open文件脖母,不用close()函數(shù)士鸥。

  with open(‘文件地址’,‘r’) as wb_data:
      content=wb_data.read()

6.利用zip函數(shù)谆级,for遍歷得到的列表础淤,取得每一項信息。

附上解決lxml無法安裝的解決方法:
Paste_Image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末哨苛,一起剝皮案震驚了整個濱河市鸽凶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌建峭,老刑警劉巖玻侥,帶你破解...
    沈念sama閱讀 216,997評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異亿蒸,居然都是意外死亡凑兰,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評論 3 392
  • 文/潘曉璐 我一進(jìn)店門边锁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來姑食,“玉大人,你說我怎么就攤上這事茅坛∫舭耄” “怎么了?”我有些...
    開封第一講書人閱讀 163,359評論 0 353
  • 文/不壞的土叔 我叫張陵贡蓖,是天一觀的道長曹鸠。 經(jīng)常有香客問我,道長斥铺,這世上最難降的妖魔是什么彻桃? 我笑而不...
    開封第一講書人閱讀 58,309評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮晾蜘,結(jié)果婚禮上邻眷,老公的妹妹穿的比我還像新娘眠屎。我一直安慰自己,他們只是感情好肆饶,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,346評論 6 390
  • 文/花漫 我一把揭開白布组力。 她就那樣靜靜地躺著,像睡著了一般抖拴。 火紅的嫁衣襯著肌膚如雪燎字。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,258評論 1 300
  • 那天阿宅,我揣著相機(jī)與錄音候衍,去河邊找鬼。 笑死洒放,一個胖子當(dāng)著我的面吹牛蛉鹿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播往湿,決...
    沈念sama閱讀 40,122評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼妖异,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了领追?” 一聲冷哼從身側(cè)響起他膳,我...
    開封第一講書人閱讀 38,970評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎绒窑,沒想到半個月后棕孙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,403評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡些膨,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,596評論 3 334
  • 正文 我和宋清朗相戀三年蟀俊,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片订雾。...
    茶點(diǎn)故事閱讀 39,769評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡肢预,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出洼哎,到底是詐尸還是另有隱情烫映,我是刑警寧澤,帶...
    沈念sama閱讀 35,464評論 5 344
  • 正文 年R本政府宣布谱净,位于F島的核電站窑邦,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏壕探。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,075評論 3 327
  • 文/蒙蒙 一郊丛、第九天 我趴在偏房一處隱蔽的房頂上張望李请。 院中可真熱鬧瞧筛,春花似錦、人聲如沸导盅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽白翻。三九已至乍炉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間滤馍,已是汗流浹背岛琼。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留巢株,地道東北人槐瑞。 一個月前我還...
    沈念sama閱讀 47,831評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像阁苞,于是被迫代替她去往敵國和親困檩。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,678評論 2 354

推薦閱讀更多精彩內(nèi)容