Code前端首页关于Code前端联系我们

Python爬取网易精挑细选的女生内衣信息,探寻颜色偏好和尺码分布……

terry 2年前 (2023-09-25) 阅读数 53 #后端开发

网易商品评论爬取

分析网页

评论分析❀❀》,先点击Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

在产品页面打开Chrome控制台,切换到网络页面,然后将产品页面切换到评价选项卡,选择评论文字,例如“薄,佩戴舒适,满意”,然后在网络中搜索,Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

可以发现通过listByItemByTag.json发送的评论文本,点击输入请求,复制请求的URL:

you.163.com/xhr/comment...Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

粘贴URL 进入Postman,一一尝试url搜索参数,最后可以发现只需要保留itemId和page这两个请求参数即可。Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

请求返回的是JSON格式的数据,下面对JSON进行分析不难发现,所有评论数据都存储在commentList中,我们只需要存储数据即可。

下面是如何获取itemId信息。这是产品的 ID。我们回到网易精选首页继续分析。

产品ID获取

当我们在搜索框中输入关键字进行搜索时,我们也可以发现网络中有很多请求。这时,我们可以观察每个请求,并发送请求文件的名称(这里需要一些经验,乖巧的程序员不会乱起名字),我们在搜索时就可以找到该请求并显示搜索结果。 Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

搜索通常是搜索,所以我们锁定这个search.json请求。同样将请求URL复制到Postman中,对参数一一进行验证,最后保留page和keyword这两个参数。 Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

该请求返回的数据较多,所以还是需要耐心分析数据。还可以发现result->data->direct->searcherResult->result下的id值就是我们想要获取的商品ID。以上,我们基本完成了前期的分析工作,现在开始编写代码。

写代码

获取商品ID

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
复制代码

这里我获取第1页的商品ID。下面是利用商品ID获取不同商品下的评论信息。

通过前面的分析,我们可以知道评论信息的形式如下。对于这种形式的信息,我们可以很方便的将其存储在MongoDB中,然后慢慢分析数据的内容。

{
                "skuInfo": [
                    "颜色:肤色",
                    "杯码:75B"
                ],
                "frontUserName": "1****8",
                "frontUserAvatar": "https://codeqd.com/zb_users/upload/2023/09/f8f20a77db47b8c66c531c14c8b38ee7.jpg",
                "content": "质量好,穿着舒服",
                "createTime": 1555546727635,
                "picList": [
                    "https://codeqd.com/zb_users/upload/2023/09/742f28186d805571e4b3f28faa412941.jpg"
                ],
                "commentReplyVO": null,
                "memberLevel": 4,
                "appendCommentVO": null,
                "star": 5,
                "itemId": 1680205
            }
复制代码

对于MongoDB,我们可以自己构建,也可以使用免费的在线服务。这里我介绍一个免费的MongoDB服务站点:mlab。使用起来非常简单,就不详细介绍使用过程了。

现在数据库可用了,下一步就是将数据存储在其中。

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 页评论" % i)
            commentList = res['data']['commentList']
            C_list.append(commentList)
            time.sleep(1)
            # save to mongoDB
            try:
                mongo_collection.insert_many(commentList)
            except:
                continue
        return C_list
    except:
        raise
复制代码

最后一次抓取完成后,总共有7000多条数据。现在您可以根据您的个人需求进行一些分析。 Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

爬取数据MongoDB链接

conn = MongoClient("mongodb://%s:%s@ds149974.mlab.com:49974/you163" % ('you163', 'you163 = conn.)) db you163 mongo_collection = db.you163

商品评论数据分析

激动人心的时刻到了,找出女孩们的喜好!

首选颜色

先来看看女生最喜欢的颜色Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

可见黑色是遥遥领先的,所以这里需要注意一下!然后用饼图观察不同颜色的比例Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

那么在这些颜色中,你喜欢她吗?

尺码分布

Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

没问题,75B是大多数女生的尺码。如果你还没有研究过这个罩杯尺寸,也没关系。我为你制作了一个比较表。放心拿走吧Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

产品评论

最后来看看妹子们对产品的评价Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

至于星级,大部分都是五星级评价。毕竟,打着“精挑细选”的旗号,品质一定要保证。 。来看看评论区女生最喜欢用什么词来形容它Python 爬取网易严选妹子内衣信息,探究颜色偏好、尺寸分布…

舒服,很舒服,很舒服;满意,非常满意,非常满意。就像加入了“赞美小组”一样。看来女生首先关心的就是舒服不舒服。毕竟,适合自己,质量才是最重要的!

好啦,看完上面的分析,你是否单身并想脱单呢?如果你身边已经有一个温柔的女孩,是不是应该去讨好她呢?

完整代码

github.com/zhouwei713/…

作者:周洛波
链接:https://juejin.im/post/5da6776595e481来源:掘金
版权归作者所有保留权利。商业转载请联系作者获取授权。非商业转载请注明来源。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门