京東商品評(píng)論數(shù)據(jù)爬蟲,包含對(duì)數(shù)據(jù)的采集、清洗、可視化、分析等過(guò)程,作為數(shù)據(jù)庫(kù)課程

感謝大家的star和fork,為了感謝大家的關(guān)注,特意對(duì)代碼進(jìn)行了優(yōu)化,對(duì)最新的url格式進(jìn)行了更新,減少了一些冗余的參數(shù),希望能夠幫助大家入門爬蟲,已經(jīng)爬好的京東手機(jī)的評(píng)論已經(jīng)存儲(chǔ)在data目錄下,可以直接用于進(jìn)一步分析。后續(xù)會(huì)重新封裝幾個(gè)版本,主要是添加多線程、redis緩存等機(jī)制提高爬蟲效率,同時(shí)也將把核心參數(shù)打包成json方便使用。
希望你抓取順利,同時(shí)也希望大家多多關(guān)注和支持,你們的fork是對(duì)我最大的認(rèn)可,哈哈哈!
1.抓取評(píng)論的關(guān)鍵字
用戶ID
評(píng)論內(nèi)容
會(huì)員級(jí)別
點(diǎn)贊數(shù)
回復(fù)數(shù)
評(píng)價(jià)星級(jí)
購(gòu)買時(shí)間
手機(jī)型號(hào)
2.抓取原理
分析京東評(píng)論界面數(shù)據(jù)來(lái)源及url規(guī)律?
利用requests庫(kù)訪問json格式評(píng)論信息?
3.運(yùn)行環(huán)境
Chrome 版本 72.0.3626.109(正式版本) (64 位)
Python 3.5.2 :: Anaconda 4.2.0 (64-bit)
前置庫(kù)??
核心庫(kù)如下?
requests
fake_useragent
BeautifulSoup
在當(dāng)前目錄下的控制臺(tái)使用以下命令,批量安裝上述相關(guān)的程序包?
pip install -r requirements.txt
4.使用方法
Cookie配置
以下圖為例,復(fù)制控制臺(tái)中Header請(qǐng)求中的Cookies字段內(nèi)容,將其替換代碼中'your cookies'部分,即可批量訪問評(píng)論信息,有問題請(qǐng)留言。?
爬取腳本SpiderScript.py
將文件下載到本地,cmd進(jìn)入該文件夾,在配置好Cookie和自己想爬取的商品id后運(yùn)行?
python SpiderScript.py?
即可執(zhí)行爬蟲腳本,當(dāng)然也可以通過(guò)Pycharm、VS Code等環(huán)境直接運(yùn)行該腳本。?
?(注意:在爬取數(shù)據(jù)之前,盡量確保網(wǎng)絡(luò)的穩(wěn)定,這能提高爬蟲的效率,爬完所有數(shù)據(jù),會(huì)存到data目錄下的csv文件中)?
數(shù)據(jù)處理腳本JDComment_Processing.ipynb
使用Jupyter notebook/lab打開ipynb文件,隨后shift+enter逐步執(zhí)行,即可看到數(shù)據(jù)處理過(guò)程(每個(gè)單元格的執(zhí)行情況)??
5.數(shù)據(jù)處理 :在JDComment_Processing中包含了數(shù)據(jù)清洗、數(shù)據(jù)分析的整個(gè)過(guò)程(附注釋與分析),使用的IDE是jupyter。數(shù)據(jù)規(guī)模有限,分析過(guò)程僅供參考。?
6.京東商品評(píng)論數(shù)據(jù)封裝接口代碼
1.請(qǐng)求方式:HTTPS? GET POST?
2.請(qǐng)求鏈接:http://c0b.cc/R4rbK2
3.請(qǐng)求代碼示例,支持高并發(fā)請(qǐng)求(CURL、PHP 、PHPsdk 、Java 、C# 、Python...)
4.響應(yīng)示例