京東商品評論太多(帶你一鍵爬取京東商品評論)
一凝聚力量、項目說明

1.項目背景
一天,一朋友扔給我一個鏈接s://item.jd.com/.html聽得進,讓我看看這個歌商品的所有評論怎么抓取新的力量,我打開一看,好家伙便利性,竟然有近300萬條評論去創新,不是一個小數(shù)目啊。
京東某商品評論
但是仔細一看緊迫性,原來有234萬+的評論是默認好評,還是有少部分是有價值的評價的更適合。
經(jīng)過進一步觀察高效,可以看到
商品評論翻頁
顯然,網(wǎng)頁中顯示的只有100頁數(shù)據(jù)要素配置改革,每頁顯示10條體系,通常可以用selenium點擊每一頁然后獲取帶動產業發展,但是這樣效率是不是太低了呢責任製?還是直接用requests來得更直接,很多情況下網(wǎng)頁顯示的數(shù)據(jù)是請求得到的JSON數(shù)據(jù)在網(wǎng)頁上渲染而顯示出來的倍增效應,京東的評論會不會也是這樣呢規則製定?好製造業,說干就干!远ú灰?〗M合運用!
2.項目環(huán)境
這個小項目使用Python爬取,不需要太多的配置迎難而上,只需要安裝requests庫就足夠積極,我相信對于很多玩爬蟲的小伙伴來說這個庫肯定是必備的,沒裝requests不要告訴我你會爬蟲堅持先行。
二產業、項目實施
1.項目分析
上面說到,網(wǎng)頁中的數(shù)據(jù)很多都是通過渲染請求到的JSON數(shù)據(jù)得到的情況較常見,那么我們就來看看京東是不是也是這樣的可持續。利用瀏覽器的審計工具,選擇Network欄機製,可以看到
商品評論總體概況
仔細查看全過程,尋找鏈接中于評論(comment)有關的鏈接,可以找到其中的一個請求鏈接s://club.jd.com/comment/productCommentSummaries.action?referenceIds=&callback=jQuery1951081&_=探討,如上圖不負眾望。這是關于該商品評論的整體情況的,可以看到具體的總評論數(shù)調解製度、默認好評數(shù)精準調控、好評數(shù)、好評率等應用的因素之一,雖然不是我們想要的解決,但是也近了一步,繼續(xù)尋找敢於監督,又找到了一條帶comment字眼的鏈接s://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1幅度,如圖
評論詳情概覽
后邊有10條評論,應該就是該商品對應的第一頁評論了重要的作用,點開查看貢獻,如下:
評論數(shù)據(jù)詳情
對比網(wǎng)頁中顯示的評論可以看到,這就就是我們要找的東西穩中求進。
由于得到的數(shù)據(jù)不是標準格式的JSON統籌,所以我選擇使用正則表達式來獲取相關的內(nèi)容。
現(xiàn)在還有一個問題協同控製,我們只獲得了1頁評論振奮起來,那怎么獲取所有的評論呢?會不會秘密隱藏在鏈接中呢試驗?
對于鏈接s://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1勞動精神,顯然有很多參數(shù)開展攻關合作,不難找到,有參數(shù)productId和page保供,假如猜得不錯自行開發,應該是商品id和評論頁數(shù)(從0開始),這時責任,換一個商品id應用情況,那么商品id怎么獲得呢?舉個例子組建,在鏈接s://item.jd.com/.html中表現,商品id就是。另找一個商品深刻變革,將其商品id替換掉評論鏈接中的productId結論,獲得的正是該商品的第一頁評論。現(xiàn)在嘗試翻頁質生產力,逐漸增大page參數(shù)的值適應性強,如1、2先進的解決方案、3…拓展,也能獲取到對應頁的評論數(shù)據(jù)。
現(xiàn)在分析工作已經(jīng)做的差不多了宣講活動,可以開始碼代碼了不斷進步。
2.代碼實現(xiàn)
導入模塊和定義常量
import?reimport?timeimport?csvimport?osimport?requestsimport?html#?設置請求頭headers?=?{'cookie':?'shshshfp=22ddd21be92463ffa35684d;?shshshfpa=ab283f84-c40f-9710-db89-84a8d3366a81-;?__jda=.....1;?__jdv=|direct|-|none|-|;?__jdc=;?shshshfpb=bUe7tI9%2FOOaJKd7vP0EtSOg%3D%3D;?__jdu=;?areaId=22;?ipLoc-djd=22-1977-1980-0;?3AB9D23F7A4B3C9B=7XEQD4BFTGEH44EK7LN7HLFCHJW6W2NS5VJOQOCHABZVI7LXJJIW3K2IX5MTPZ4TBERBLY6TRQR5CA3S3IYVLQ2JGI;?jwotest_product=99;?shshshsID=a7457cee6a4a9fa285fe2cff44c6bd17_4_;?__jdb=.4.|1.;?JSESSIONID=8C21549A613B83F0CB86EF1F38FD63D3.s1','sec-fetch-dest':?'document','sec-fetch-mode':?'navigate','sec-fetch-site':?'none','sec-fetch-user':?'?1','upgrade-insecure-requests':?'1','User-Agent':?'Mozilla/5.0?(Windows?NT?10.0;?Win64;?x64)?AppleWebKit/537.36?(KHTML,?like?Gecko)?Chrome/80.0.3987.162?Safari/537.36'}
導入需要使用到的模塊,并且定義請求頭用于請求效率,減少被反爬的概率規模。
下一篇:京東直播不為帶貨而帶貨
文章地址:http://61py.com/article/online/10765.html

- 1互聯(lián)網(wǎng)對傳統(tǒng)企業(yè)的沖擊有多大
- 2美團再因不正當競爭敗訴新反法互聯(lián)網(wǎng)專條首次適用外賣領域!
- 32021互聯(lián)網(wǎng)十件大事對不起賈躍亭你只能排第四
- 4互聯(lián)網(wǎng)宣傳做的就是用戶體驗
- 5互聯(lián)網(wǎng)創(chuàng)業(yè)到底需要怎樣的能力
- 6適合上班族的25個副業(yè)(適合上班族的互聯(lián)網(wǎng)副業(yè))
- 7互聯(lián)網(wǎng)的世界沒有永遠的敵人只有永遠的利益
- 8押唄進駐天線貓助力互聯(lián)網(wǎng)數(shù)碼產(chǎn)品寄存行業(yè)經(jīng)濟持續(xù)發(fā)展
- 9互聯(lián)網(wǎng)公司如何做好品牌定位
- 102021年互聯(lián)網(wǎng)金融發(fā)展回顧冬去春欲來改弦當更張