zoukankan      html  css  js  c++  java
  • Python爬取小姐姐内衣信息,寻找妹纸们的偏好

    今天继续来分析爬虫数据分析文章,一起来看看网易严选商品评论的获取和分析。

    警告:本教程仅用作学习交流,请勿用作商业盈利,违者后果自负!如本文有侵犯任何组织集团公司的隐私或利益,请告知联系阿喵删除!!! 声明:这是一篇超级严肃的技术文,超!级!严!肃!请本着学习交流的态度阅读,谢谢!

    如果大家在学习中遇到困难,想找一个python学习交流环境,可以加入我的pythonQQ裙 ,裙号609616831,可领取python学习资料,会节约很多时间,减少很多遇到的难题。

    网易商品评论爬取

    分析网页

    评论分析

    进入到网易精选官网,搜索“文胸”后,先随便点进一个商品。

    在商品页面,打开 Chrome 的控制台,切换至 Network 页,再把商品页面切换到评价标签下,选择一个评论文字,如“薄款、穿着舒适、满意”,在 Network 中搜索。

    可以发现,评论文字是通过 listByItemByTag.json 传递过来的,点击进入该请求,并拷贝出该请求的 URL:

    you.163.com/xhr/comment…

    将该 URL 放入 Postman 中,逐个尝试 url query params,最后能够发现,只需保留 itemId 和 page 两个请求参数即可。

    请求返回的是一个 JSON 格式的数据,下面就是分析该 JSON 数据了。

    不难发现,所有的评论数据都存储在 commentList 中,我们只需保存该数据即可。

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

    产品 ID 获取

    当我们在搜索框中输入关键字进行搜索的时候,同样能够发现在 Network 中有很多请求,此时可以观察各个请求,通过请求文件的名称(此处需要一些经验,守规矩的程序员都不会乱起名字),我们可以定位到搜索时展示搜索结果的请求。

    搜索一般都是 search,所以我们就锁定了这个 search.json 的请求。同样把请求 URL 拷贝到 Postman 中,逐个验证传参,最后保留 page 和 keyword 两个参数即可。

    该请求返回的数据较多,还是需要耐心的分析数据,也能够发现,在 result->data->directly->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

    我这里是获取了 page 为 1 的产品 ID,下面就是通过产品 ID 来获取不同产品下的评论信息。

    通过前面的分析,我们可以知道,评论信息都是如下形式的,对这种形式的信息,我们可以很方便地存储进入 MongoDB,然后再慢慢分析数据里的内容。

    {
                    "skuInfo": [
                        "颜色:肤色",
                        "杯码:75B"
                    ],
                    "frontUserName": "1****8",
                    "frontUserAvatar": "https://yanxuan.nosdn.127.net/f8f20a77db47b8c66c531c14c8b38ee7.jpg",
                    "content": "质量好,穿着舒服",
                    "createTime": 1555546727635,
                    "picList": [
                        "https://yanxuan.nosdn.127.net/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

    最后爬取完成之后,总共是七千多条数据,下面就可以根据个人需要做一些分析了。

    爬取的数据 MongoDB 链接

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

    商品评论数据分析

    下面就到了激动人心的时刻了,一探妹子偏好!

    偏好颜色

    先来看看妹子们偏好的颜色

    可以看出,黑色是遥遥领先的哦,这里你要做到心中有数!

    再通过饼状图来观察下不同颜色的占比情况

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

    尺寸分布

    没有问题,75B 就是大多数妹子的尺寸了

    如果你对这种罩杯尺寸没有研究的话,不要紧,贴心的我给你准备了对照表,拿走不谢

    商品评论

    最后我们再来看看妹子们对于商品的评价情况

    就星级评价上来看,大多数都是五星好评,毕竟打着“严选”的名号,质量是必须有保证的。

    再来看看在评论区,妹子最喜欢用什么词语来描述呢

    舒服、很舒服,非常舒服;满意、很满意,非常满意。

    仿佛进入了“夸夸群”,看来妹子们首要看重的就是舒服与否,毕竟是贴身的,质量最重要!

    好了,看了上面的分析,单身的你是不是更加有了脱单的冲动?如果是已经有软妹傍身的你,是不是该下手讨好下身边的她了呢?

    有需要源码的朋友可以私信我或者点击下方

    源码领取:QQ裙609616831

  • 相关阅读:
    ajax写用户注册
    PHP——explode的应用(获取字符串,拆为下拉列表)
    PHP 语句和时间函数
    PHP 文件上传
    PHP 文件操作代码
    PHP 弹窗 源代码 css Jquery.js
    PHP Jquery 代码操作 内容 属性 样式 事件 Json数据
    PDO 代码
    练习 《新闻管理》 添加 修改 删除
    UTF-8
  • 原文地址:https://www.cnblogs.com/python-miao/p/14277060.html
Copyright © 2011-2022 走看看