冬天到了,python给老妈选一件有气质的大衣。不然还真无从下手。
?前言
? ? ? 冬天這不就來了嗎,還是挺羨慕北方的,已經(jīng)就開始下雪了,咱們南方還是大太陽。但是還算是比較冷吧。好多時(shí)候都只有幾度!老媽在老家應(yīng)該更冷。所以今天咱們就用Python給老媽挑一件最適合的大衣。讓老媽開心開心!
今天,我們就爬取網(wǎng)易嚴(yán)選某大衣品牌評(píng)論情況,來看看大家對于顏色、尺碼都是怎么選的?
目標(biāo)獲取
我們此次的目標(biāo)數(shù)據(jù)有六個(gè),顏色、尺碼、評(píng)論時(shí)間、會(huì)員等級(jí)、點(diǎn)贊量和評(píng)論內(nèi)容
最后通過數(shù)據(jù)可視化來直觀的展示給選擇困難癥
讓你輕松做出選擇~
網(wǎng)頁分析
我們F12打開瀏覽器開發(fā)者模式,可以看到我們要獲取的數(shù)據(jù)都在其中
接下來我們找到網(wǎng)頁請求鏈接來模擬瀏覽器請求獲取數(shù)據(jù)
注意添加headers。
發(fā)送請求
網(wǎng)頁分析完畢之后接下來發(fā)送請求
url = f'http://you.163.com/xhr/comment/listByItemByTag.json?__timestamp=1636785180888&itemId=3532002&tag=%E5%85%A8%E9%83%A8&size=20&page={page}&orderBy=0&oldItemTag=%E5%85%A8%E9%83%A8&oldItemOrderBy=0&tagChanged=0' headers = {'Cookie': 'yx_from=web_search_baidu; yx_aui=ada226e7-929f-419c-af99-53ad3eda94f0; mail_psc_fingerprint=01caf6305f28d3e4b8cfe162559acaac; yx_s_device=92db99a-a0c8-22cd-47c3-61d5b24664; yx_but_id=c18807c330874f4aaae2799cd51cdf9fd04f970cabedddc6_v1_nl; P_INFO=18392144506|1636766426|1|yanxuan_web|00&99|null=zyQS1ZWw9NX5Xw50muitOHx0kkWJG3WT51-8azp0ZDa&wd=&eqid=ca2a415f0000e3c900000005618f20af; _ntes_nnid=f1c2812145357d2b883902c65c421256,1636769976319; yx_delete_cookie_flag=true; yx_stat_seesionId=ada226e7-929f-419c-af99-53ad3eda94f01636769983423; yx_stat_ypmList=; yx_show_painted_egg_shell=false; yx_new_user_modal_show=1; yx_page_key_list=http%3A//you.163.com/search%3Fkeyword%3D%25E6%25A3%2589%25E8%25A2%2584%25E5%25A5%25B3%26timestamp%3D1636769989980%26_stat_search%3Dhistory%26searchWordSource%3D5%26_stat_referer%3Dindex%23page%3D1%26sortType%3D0%26descSorted%3Dtrue%26categoryId%3D0%26matchType%3D0%2Chttp%3A//you.163.com/item/detail%3Fid%3D3991647%26_stat_area%3D1%26_stat_referer%3Dsearch%26_stat_query%3D%25E6%25A3%2589%25E8%25A2%2584%25E5%25A5%25B3%26_stat_count%3D169%26_stat_searchversion%3Dmmoe_model-1.1.0-1.3; yx_stat_seqList=v_315469b8cb%7Cv_f72eac7e53%3B-1%3Bv_0e93fce746%3Bc_6b9da68e5d%3Bv_315469b8cb%3B-1','Referer': 'http://you.163.com/item/detaierer=search&_stat_query=%E6%96%87%E8%83%B8&_stat_count=132&_stat_searchversion=dcn_model-1.1.0-1.3','User-Agent': 'Mozilla/5.0 (WindowHTML, like Gecko) Chrome/96.0.4664.9 Safari/537.36'}resp = requests.get(url, headers = headers)if resp.status_code == 200:comts_List = resp.json()['data']['commentList']print(comts_List)成功獲取到數(shù)據(jù),接下來我們要做的就是提取出我們要獲取的六個(gè)數(shù)據(jù)
顏色、尺碼、評(píng)論時(shí)間、會(huì)員等級(jí)、點(diǎn)贊量和評(píng)論內(nèi)容提取如下:
for item in comts_List:# 顏色colors = item['skuInfo'][0]# 尺碼size = item['skuInfo'][1]# 評(píng)論時(shí)間times = item['createTime']content_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(times/1000))# 會(huì)員等級(jí)memberLevel = item['memberLevel']# 評(píng)論點(diǎn)贊stars = item['star']# 評(píng)論內(nèi)容content = item['content']print(colors, size, content_time, memberLevel, stars, content)'''顏色:藏青無帽 尺碼:M 2020-12-13 00:11:23 4 5 顏色很好搭衣服,衣服比較輕薄,保暖也OK,非常滿意~~~顏色:黑色無帽 尺碼:M 2021-01-16 11:08:59 2 5 性價(jià)比很高,滑滑軟軟的,不比波司登400的差,做工沒問題,沒有線頭也沒有味道,很滿意,猶豫的可以下手了,用上券一百六十多買的顏色:黑色無帽 尺碼:M 2020-12-26 17:03:07 2 5 可以 比較輕薄 滿意顏色:粉色連帽 尺碼:S 2019-11-11 23:10:51 3 5 衣服收到!非常不錯(cuò),真的是輕盈合體,而且非常隨身,總之是太好了!顏色:黑色連帽 尺碼:L 2019-11-10 06:01:12 1 5 衣服收到了,現(xiàn)在正好可以穿,輕薄暖和,值得擁有,嚴(yán)選的東西從來沒叫我失望過。顏色:黑色無帽 尺碼:M 2019-11-26 17:47:00 1 5 輕便羽絨服不錯(cuò),穿著非常舒適,天氣冷了有時(shí)穿兩件也不愿意穿其它厚重的衣服顏色:藏青無帽 尺碼:M 2020-12-11 12:32:16 5 5 衣服不錯(cuò),太小了。顏色:黑色無帽 尺碼:S 2021-10-23 22:13:17 4 5 很棒,暖暖的,現(xiàn)在穿還有點(diǎn)熱顏色:藏青無帽 尺碼:M 2021-08-19 17:21:03 6 5 好顏色:藏青無帽 尺碼:M 2020-12-25 16:27:10 4 5 一個(gè)月前后兩件嚴(yán)選羽絨服,不用多說了吧顏色:卡其無帽 尺碼:S 2021-01-13 14:42:49 3 5 第三次購買了。這次是幫同事下單。繼續(xù)~顏色:黑色無帽 尺碼:M 2020-12-12 20:16:34 3 5 質(zhì)量可以,輕盈舒適,相信嚴(yán)選!顏色:粉色連帽 尺碼:L 2020-10-16 09:03:03 4 5 雖然配送出了點(diǎn)問題,但嚴(yán)選的整體服務(wù)還是很不錯(cuò)的,問題處理很及時(shí)!產(chǎn)品也OK!給媽媽買的,老人很滿意!顏色:紅色連帽 尺碼:M 2021-08-20 08:59:04 3 5 手感很好,蓬松柔軟,顏色無色差跟圖片一樣,喜歡的購買吧顏色:黑色無帽 尺碼:S 2021-11-10 18:01:39 1 5 好顏色:藏青無帽 尺碼:M 2021-09-14 10:39:14 3 5 非常棒,很喜歡,輕便簡單易攜帶好收藏,還保暖顏色:紅色連帽 尺碼:M 2021-09-08 09:52:49 5 5 大小合適,外出旅游帶上。顏色:藏青連帽 尺碼:M 2021-09-07 14:49:21 4 5 真的是一件非常舒服輕巧的羽絨服顏色:藏青連帽 尺碼:L 2021-09-04 00:44:29 4 5 價(jià)廉物美,到貨很速度,目前沒有其他問題。需要還會(huì)回購,這么便宜的價(jià)錢等于白送了!價(jià)錢美麗!超級(jí)劃算!性價(jià)比也很高!物流方面呢,賣家發(fā)貨速度也很快的,服務(wù)也很到位,速度快~服務(wù)好!以前也買過這個(gè),但是真心沒有這次買的好,這次買的真心賺到了,哈哈!顏色:紅色連帽 尺碼:L 2021-09-03 00:48:47 5 5 很好'''保存數(shù)據(jù)
我們將獲取到的數(shù)據(jù)保存到excel中,一會(huì)還要做數(shù)據(jù)分析和可視化展示的。
ws = op.Workbook() wb = ws.create_sheet(index=0)wb.cell(row=1, column=1, value='顏色') wb.cell(row=1, column=2, value='尺碼') wb.cell(row=1, column=3, value='評(píng)論時(shí)間') wb.cell(row=1, column=4, value='會(huì)員等級(jí)') wb.cell(row=1, column=5, value='評(píng)論點(diǎn)贊') wb.cell(row=1, column=6, value='評(píng)論內(nèi)容')wb.cell(row=count, column=1, value=colors) wb.cell(row=count, column=2, value=size) wb.cell(row=count, column=3, value=content_time) wb.cell(row=count, column=4, value=memberLevel) wb.cell(row=count, column=5, value=stars) wb.cell(row=count, column=6, value=content)ws.save('網(wǎng)易嚴(yán)選大衣.xlsx')部分?jǐn)?shù)據(jù)展示如下:
數(shù)據(jù)清洗
接下來我們使用pandas對獲取到的數(shù)據(jù)進(jìn)行去重和去空等處理
還需要對顏色和尺碼兩列數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理
# 讀取數(shù)據(jù) rcv_data = pd.read_excel('網(wǎng)易嚴(yán)選大衣.xlsx')# 去除'顏色:'字樣 rcv_data.loc[:, '顏色1'] = rcv_data['顏色'].str.replace('顏色:', '') # 去除'尺碼:'字樣 rcv_data.loc[:, '尺碼1'] = rcv_data['尺碼'].str.replace('尺碼:', '')# 存儲(chǔ)數(shù)據(jù) rcv_data.to_excel('網(wǎng)易嚴(yán)選大衣.xlsx')# 刪除重復(fù)記錄和缺失值 rcv_data = rcv_data.drop_duplicates() rcv_data = rcv_data.dropna()# 抽樣展示 print(rcv_data.sample(5))'''顏色 尺碼 評(píng)論時(shí)間 會(huì)員等級(jí) 評(píng)論點(diǎn)贊 評(píng)論內(nèi)容 顏色1 尺碼1 299 顏色:卡其無帽 尺碼:L 2019-11-21 17:47:33 4 5 給媽媽買的,穿起來很合身,非常輕薄舒適,也很暖和。 卡其無帽 L 1217 顏色:卡其連帽 尺碼:XL 2019-11-15 11:19:12 4 5 喜歡,很暖和,顏色也很靚麗 卡其連帽 XL 896 顏色:粉色無帽 尺碼:L 2019-11-26 22:38:45 2 5 買給女兒的,羽絨非常好,穿著舒適。 粉色無帽 L 1551 顏色:粉色連帽 尺碼:XL 2019-11-05 09:53:28 5 5 物美價(jià)廉 粉色連帽 XL 1036 顏色:卡其無帽 尺碼:S 2019-11-21 21:18:47 2 5 好 卡其無帽 S '''詞云展示
接下來就是用jieba、wordcloud來做好看的詞云展示圖。
c_title = rcv_data['評(píng)論內(nèi)容'].tolist() # 觀影評(píng)論詞云圖 wordlist = jieba.cut(''.join(c_title)) result = ' '.join(wordlist) pic = 'img.jpg' gen_stylecloud(text=result,icon_name='fas fa-tshirt',font_path='msyh.ttc',background_color='white',custom_stopwords=stop_words,output_name=pic,) print('繪圖成功!')詞頻展示
我們找出評(píng)論中前十大高頻詞匯來做展示圖
# 詞頻設(shè)置all_words = [word for word in result.split(' ') if len(word) > 1 and word not in stop_words]wordcount = Counter(all_words).most_common(10)x1_data, y1_data = list(zip(*wordcount))print(x1_data)print(y1_data)'''('不錯(cuò)', '非常', '滿意', '喜歡', '質(zhì)量', '衣服', '輕薄', '顏色', '嚴(yán)選', '保暖')(274, 236, 216, 205, 203, 156, 136, 128, 123, 119)'''詞頻氣泡圖
詞頻餅圖
合成看板大屏展示圖
大衣尺碼展示圖
由圖可以看出,L和M占比超過50%,大多小姐姐的身高都是在165-170之間的
完整項(xiàng)目源代碼點(diǎn)這里即可
評(píng)論熱度排行分布圖
下面看一下熱度排名前三的評(píng)論:
好
很好
不錯(cuò)
大衣顏色分布圖
黑色連帽和黑色無帽占榜前二,跟著小姐姐選就沒錯(cuò)啦~
總結(jié)
以上是生活随笔為你收集整理的冬天到了,python给老妈选一件有气质的大衣。不然还真无从下手。的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python抓取分析“创造101 ”菊姐
- 下一篇: 攻防世界MISC新手题第一题第三题