Python 1-2

注意事項

  • 正則表達(dá)式
  • 獲取列表長度
  • 字符集問題
from bs4 import BeautifulSoup
import re

html_file = '/Users/XXX/muggle/Plan-for-combating/week1/1_2/1_2answer_of_homework/index.html'

# 使用with open語法打開文件
# 第一個參數(shù)是文件地址;第二個參數(shù)是文件處理方式:r表示讀取文件;w表示寫文件
# 添加encoding指定字符集,避免亂碼問題
with open(html_file,'r',encoding='utf-8') as web_data:
    content = web_data.read()
    soup = BeautifulSoup(content, 'lxml')

    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('body > div > div > div.col-md-9 > div > div > div > div.ratings > p:nth-of-type(2)')

for title, image, price, star, review in zip(titles, images, prices, stars, reviews):
    data = {
        'title': title.get_text(),
        'image': image.get('src'),
        'price': price.get_text(),
        # 通過len函數(shù)獲取列表長度
        'star' : len(star.find_all('span', class_="glyphicon glyphicon-star")),
        # 通知正則表達(dá)式獲取數(shù)字
        'review': int(re.search(r'\d*', review.get_text()).group())
    }
    print(data)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,553評論 19 139
  • 轉(zhuǎn)化操作: RDD的轉(zhuǎn)化操作是返回新的RDD的操作。轉(zhuǎn)化出來的RDD是惰性求值的,只有在行動操作中用到時才會被計算...
    大尾巴狼呀閱讀 661評論 0 0
  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,677評論 0 4
  • 初衷:看了很多視頻、文章,最后卻通通忘記了,別人的知識依舊是別人的,自己卻什么都沒獲得。此系列文章旨在加深自己的印...
    DCbryant閱讀 4,250評論 0 20
  • 今天現(xiàn)在沒事,那么我就談?wù)劥蚬ず徒?jīng)商哪個好 今天早上7點45分開始上班了,下午4點45下班了,很...
    你好別后退閱讀 336評論 0 0

友情鏈接更多精彩內(nèi)容