<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          為妹子打抱不平,我深夜爬取了嚴(yán)選的男性?xún)?nèi)褲數(shù)據(jù),結(jié)果……

          共 3045字,需瀏覽 7分鐘

           ·

          2020-09-07 14:08

          文 |?閑歡

          來(lái)源:Python 技術(shù)「ID: pythonall」

          上一篇文章通過(guò)爬取網(wǎng)易嚴(yán)選的評(píng)論數(shù)據(jù)來(lái)探究妹子們的內(nèi)衣尺碼、顏色偏好以及對(duì)內(nèi)衣的評(píng)價(jià),通過(guò)大家的反響發(fā)現(xiàn)好像無(wú)意中得罪了某類(lèi)群體,又滿(mǎn)足了某類(lèi)群體的某種特殊癖好。作為無(wú)意的舉動(dòng),作者深感愧疚。為了為妹子打抱不平,工作加班到深夜之后,我毅然犧牲睡覺(jué)時(shí)間,來(lái)爬取網(wǎng)易的男性?xún)?nèi)褲數(shù)據(jù),看看有什么發(fā)現(xiàn)。

          爬取數(shù)據(jù)

          首先,我們?cè)诰W(wǎng)易嚴(yán)選的搜索框輸入關(guān)鍵詞“男士?jī)?nèi)褲”,頁(yè)面搜索出來(lái)男士?jī)?nèi)褲的產(chǎn)品列表界面:

          搜索結(jié)果

          我們點(diǎn)開(kāi)第一個(gè)商品,點(diǎn)擊“評(píng)論”,就可以看到如下信息:

          評(píng)論信息

          我們分析請(qǐng)求列表,就可以很容易地發(fā)現(xiàn)評(píng)論數(shù)據(jù)是通過(guò) https://you.163.com/xhr/comment/listByItemByTag.json 這個(gè)請(qǐng)求來(lái)獲取的。然后我們過(guò)濾請(qǐng)求參數(shù),去掉不是必傳的參數(shù),最終發(fā)現(xiàn) itemId 和 page 兩個(gè)參數(shù)是必須的。

          itemId 是指商品的ID,page 就是指的請(qǐng)求的頁(yè)碼,默認(rèn)每頁(yè)記錄數(shù)是40。所以我們要獲取評(píng)論數(shù)據(jù)的前提是獲取到對(duì)應(yīng)的商品ID。

          我們是從搜索頁(yè)面點(diǎn)擊產(chǎn)品進(jìn)入商品詳情頁(yè)的,所以搜索頁(yè)面的商品列表里面肯定存在每一個(gè)商品的商品ID,我們回到搜索產(chǎn)品列表頁(yè),尋找搜索商品的請(qǐng)求:

          商品列表

          同樣的,我們?cè)谒阉鹘缑娴恼?qǐng)求分析中,找到了 http://you.163.com/xhr/search/search.json 這個(gè)請(qǐng)求,逐個(gè)分析請(qǐng)求參數(shù)后發(fā)現(xiàn),我們只需要 keyword 和 page 兩個(gè)參數(shù)即可。

          請(qǐng)求分析完成后,我們就可以來(lái)碼代碼了。代碼如下:


          # 獲取商品列表def search_keyword(keyword): uri = 'https://you.163.com/xhr/search/search.json' query = { "keyword": keyword, "page": 1 } try: res = requests.get(uri, params=query).json() result = res['data']['directly']['searcherResult']['result'] product_id = [] for r in result: product_id.append(r['id']) return product_id except: raise
          # 獲取評(píng)論def details(product_id): url = 'https://you.163.com/xhr/comment/listByItemByTag.json' try: C_list = [] for i in range(1, 100): query = { "itemId": product_id, "page": i, } res = requests.get(url, params=query).json() if not res['data']['commentList']: break print("爬取第 %s 頁(yè)評(píng)論" % i) commentList = res['data']['commentList'] C_list.extend(commentList) time.sleep(1)
          return C_list except: raise

          product_id = search_keyword('男士?jī)?nèi)褲')r_list = []for p in product_id: r_list.extend(details(p))
          with open('./briefs.txt', 'w') as f: for r in r_list: try: f.write(json.dumps(r, ensure_ascii=False) + '\n') except: print('出錯(cuò)啦')

          為了簡(jiǎn)單起見(jiàn),我抓取了首頁(yè)的40件商品的評(píng)論數(shù),將結(jié)果保存在 briefs.txt 文件中。文件數(shù)據(jù)的預(yù)覽如下:

          存儲(chǔ)數(shù)據(jù)

          分析數(shù)據(jù)

          抓取完數(shù)據(jù)后,我們就可以進(jìn)入探索環(huán)節(jié)了,我想從顏色、尺碼、評(píng)論三個(gè)角度分析數(shù)據(jù),看看男士們內(nèi)褲的一些“特點(diǎn)”。

          我們來(lái)看看數(shù)據(jù)結(jié)構(gòu)的特點(diǎn):

          {  "skuInfo": [    "顏色:黑色",    "尺碼:M"  ],  "frontUserName": "S****、",  "frontUserAvatar": "https://yanxuan.nosdn.127.net/0da37937c896cac1955bda8522d5754f.jpg",  "content": "非常好",  "createTime": 1592965119969,  "picList": [],  "commentReplyVO": null,  "memberLevel": 5,  "appendCommentVO": null,  "star": 5,  "itemId": 3544005}

          仔細(xì)觀(guān)察這條評(píng)論數(shù)據(jù),我們可以看到顏色和尺碼都放在 skuInfo 這個(gè)數(shù)組里面,評(píng)論是放在 content 字段里面。同時(shí),我們多翻一些數(shù)據(jù)就可以發(fā)現(xiàn),顏色有好幾種格式:

          • 單條裝的顏色,例如:顏色:淺麻灰
          • 多條裝的顏色,例如:顏色:(黑色+麻灰+淺麻灰)3條
          • 自選多條的顏色,例如:顏色:黑色+藏青色
          • 其他,例如:規(guī)格:5條裝

          這里,最后一種無(wú)法分辨出顏色,我準(zhǔn)備過(guò)濾掉。其他幾種,去除掉干擾,通過(guò)“+”就可以拆分出顏色來(lái)。

          而尺碼數(shù)據(jù)格式是統(tǒng)一的,可以直接獲取。

          我將顏色和尺碼都做成柱狀圖來(lái)展示,而評(píng)論就用詞云來(lái)展示。最終的效果圖如下:

          顏色分布

          顏色并沒(méi)有出乎我的意料,黑色遙遙領(lǐng)先,不過(guò),如果把幾種灰色加起來(lái)的話(huà),可能超過(guò)了黑色??傊?,黑色和灰色是大眾的選擇。

          尺寸分布

          尺寸嘛,前三名是XL、L和XXL,不過(guò)XL和L相差不大。

          評(píng)論詞云

          從評(píng)論可以看出,不論是男性還是女性,對(duì)于內(nèi)衣的選擇,舒適度永遠(yuǎn)是第一的,質(zhì)量其次。想想也是的,質(zhì)量再好,穿著不舒服,是有點(diǎn)淡淡的憂(yōu)傷~

          總結(jié)

          網(wǎng)易嚴(yán)選的受眾群體是35歲以下的青年人,這個(gè)數(shù)據(jù)分析的結(jié)果也可以反應(yīng)這個(gè)年齡群體的普遍選擇。所以,廣大男青年們,在你們嘲笑女性尺碼多數(shù)是13的同時(shí),不要忘了人還沒(méi)到中年,腰包沒(méi)鼓起來(lái),腰帶已經(jīng)鼓起來(lái)了。多運(yùn)動(dòng)多注重身體管理吧!




          瀏覽 46
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  五月婷婷俺来也 | 欧美成人精品在线视频 | 爱爱大全在线 | 黄色电影免费一级片 | www.伊人久久 |