![基于Python的汽車信息爬取與分析_第1頁](http://file4.renrendoc.com/view10/M03/1F/25/wKhkGWVxAeuAEDfVAAIk3qJC2r0108.jpg)
![基于Python的汽車信息爬取與分析_第2頁](http://file4.renrendoc.com/view10/M03/1F/25/wKhkGWVxAeuAEDfVAAIk3qJC2r01082.jpg)
![基于Python的汽車信息爬取與分析_第3頁](http://file4.renrendoc.com/view10/M03/1F/25/wKhkGWVxAeuAEDfVAAIk3qJC2r01083.jpg)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
二、《基于Python的汽車數(shù)據(jù)爬取與分析》1課題內(nèi)容和要求問題的提出用Python語言自行編寫爬蟲框架或使用Scrapy框架,爬取汽車之家或易車網(wǎng)的車輛相關(guān)數(shù)據(jù),按照品牌、車系、年款、價格等信息進行分類和顯示。使用正那么表達式從網(wǎng)頁中提取有用的數(shù)據(jù)??梢詫崿F(xiàn)多線程爬取,以提高爬取效率。在此根底上可以進一步獲取用戶反應(yīng)信息,評價不同車型的優(yōu)劣。1.2選題背景與意義在現(xiàn)在這種互聯(lián)網(wǎng)浪潮下,信息正在扮演越來越重要的角色。人們獲取信息,分析信息,利用信息。而怎樣快速便捷地獲取信息成為人們非常關(guān)注的問題。同時,隨著中國工業(yè)化水平和經(jīng)濟水平的提高,汽車成為家庭必需品。人們對汽車信息的需求也在不斷增大。在此背景下,我們選擇了“基于python的汽車信息爬取與分析〞這個課題,因為我們想要通過這次鍛煉切實地解決一個現(xiàn)實問題。1.3開發(fā)工具簡介運行環(huán)境如果要運行此軟件,用戶計算機必須有Python環(huán)境和Scrapy環(huán)境。開發(fā)環(huán)境本軟件基于Python3.6和Scrapy1.4開發(fā)Scrapy各組件版本號如下:Python:3.6.1(v3.6.1:69c0db5,Mar212023,17:54:52)pyOpenSSL:17.3.0(OpenSSL1.1.0f25May2023)開發(fā)工具Pycharm、cmder2需求分析2.1可行性分析技術(shù)可行性:python在爬蟲方面有資源和環(huán)境優(yōu)勢。易車網(wǎng)對爬蟲腳本比擬友好。操作可行性:Scrapy作為一個非常強大的爬蟲框架,有著它易用,高效的一面。同時由于Scrapy對于有python學(xué)習(xí)背景的人來說上手不算困難,故此工程可以用Scrapy來實現(xiàn)。2.2系統(tǒng)數(shù)據(jù)需求本系統(tǒng)最終將爬取到的數(shù)據(jù)以csv文件存儲在本地工程根目錄下,方便用戶通過excel軟件直接對數(shù)據(jù)進行查看和分析。2.3系統(tǒng)的性能需求此系統(tǒng)基于Scrapy框架,由于Scrapy默認(rèn)支持多線程爬取,系統(tǒng)的性能根本可以到達要求。而稍后的測試結(jié)果也佐證了此結(jié)果。3概要設(shè)計3.1系統(tǒng)結(jié)構(gòu)的總體設(shè)計3.2系統(tǒng)模塊設(shè)計基于scrapy,我們的工程分為4個模塊,分別是定義爬取數(shù)據(jù)模塊、爬取模塊、配置模塊和數(shù)據(jù)處理模塊。我們在item.py中CarItem類中定義要爬取的數(shù)據(jù),如品牌、車系、年款、價格等等。爬取模塊會直接引用該類創(chuàng)立的對象對數(shù)據(jù)進行保存。我們在pipelines.py中設(shè)置對爬取下來的數(shù)據(jù)的處理方式,比方存儲方式、過濾去重等操作。該文件從bitauto.py文件中獲取爬取到的信息,并進行相關(guān)處理。我們在settings.py中對工程進行一些必要設(shè)置,如優(yōu)先級、多線程、延遲等。同時在測試時,我們可以根據(jù)修改此文件的配置信息來控制變量測試相關(guān)因素對爬取效率的影響。bitauto.py是主要爬取方法實現(xiàn)的文件。分析網(wǎng)頁,獲取信息,跳轉(zhuǎn)頁面等等核心操作全部由此文件來實現(xiàn)。4詳細(xì)設(shè)計類圖:核心算法流程圖:核心操作全部在bitauto.py中實現(xiàn),故此局部主要描述bitauto.py的設(shè)計。具體實現(xiàn)采用面向過程的編程方法,具體到代碼那么是4個方法,分別是parse(),parse_detail(),parse_soft()和parse_word()方法。Parse()方法用于從主頁面獲取品牌信息列表,并生成相關(guān)車系鏈接并調(diào)用parse_detail()方法對車系頁面進行處理。分析源碼發(fā)現(xiàn)當(dāng)前熱銷的汽車品牌保存在一個無序列表<ul>中。我們對此無序列表中的每個<li>標(biāo)簽進行遍歷,獲取它的href屬性并生成絕對鏈接。在每生成一個鏈接之后,我們可以在yield語句中調(diào)用request方法進到下級頁面去獲取相關(guān)信息。Parse_detail()方法用于獲取某品牌的車系列表,并生成相關(guān)車輛具體信息頁面的URL,調(diào)用parse_soft()方法對車輛的詳情頁面進行處理。分析當(dāng)前頁面源碼發(fā)現(xiàn)各種車型都被包裹在一個<div>標(biāo)簽中。我們可以對此標(biāo)簽下的<a>標(biāo)簽進行獲取,并得到href屬性,這里得到的是相對鏈接,然后把它拼接成絕對鏈接,這樣我們就獲取到了每個車型的詳情頁面。同樣使用yield調(diào)用request方法可以進行下級頁面的分析。Parse_soft()方法爬取車輛的根本信息,包括品牌、車系、年款、價格和評分,并生成口碑鏈接調(diào)用parse_word()方法對車輛的口碑信息進行處理。此頁面的處理比擬簡單,我們需要的各種信息都以各種標(biāo)簽的形式直接出現(xiàn)在源碼中,直接可以提取出來。然后獲取口碑鏈接以同樣的方法跳轉(zhuǎn)口碑頁面。Parse_word()方法用于獲取車輛的優(yōu)缺點和用戶評論,此方法是最后一個方法。此頁面中將優(yōu)點、缺點和評論分別放在一個<div>中,對<div>進行遍歷,即可得到相關(guān)數(shù)據(jù)。它們的調(diào)用關(guān)系是逐級調(diào)用。5測試數(shù)據(jù)及其結(jié)果分析為了測試爬取數(shù)據(jù)的正確性,我們設(shè)計爬取易車網(wǎng)當(dāng)前熱銷的16款品牌下的所有車型,共計約500款,而我們對此爬取的結(jié)果與我們直接在網(wǎng)站上記錄的結(jié)果數(shù)目根本吻合,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 房屋租賃付定金合同
- 獨家代理合同(20篇)
- 酒店服務(wù)標(biāo)準(zhǔn)化建設(shè)合作協(xié)議
- 軟件開發(fā)委托服務(wù)合同
- 食品安全檢測認(rèn)證服務(wù)合同
- 藝術(shù)品交易鑒賞期免責(zé)合同協(xié)議
- 手房租賃買賣合同
- 工程施工中止合同書
- 環(huán)保工程承包施工合同
- 夫妻債務(wù)協(xié)議書有效
- GB/T 20308-2020產(chǎn)品幾何技術(shù)規(guī)范(GPS)矩陣模型
- 男孩女孩動起來健康運動知識PPT模板
- 體育原理課件
- 鐵路道岔知識課件
- 自考公共關(guān)系學(xué)課件
- 森林害蟲防治方法課件
- 各種el34名膽電子管評測
- 超分子化學(xué)-杯芳烴課件
- 北郵工程數(shù)學(xué)期末試卷B卷
- 超長結(jié)構(gòu)及大體積混凝土專項施工方案
- 車標(biāo)識別 課講義件課件
評論
0/150
提交評論