通过爬虫去爬取京东的用户评价,通过分析爬取的数据能得到很多结果,比如,哪一种颜色的胸罩最受女性欢迎,以及中国女性的平均size(仅供参考哦~)
引用 @铁岭安东尼7 发表的:课代表总结:B多。
引用 @rajahn 发表的: 班长补充:买b的很多是a,真b能穿c,买cd的还有相当部分是胖子坦克大妈属性
引用 @别摸了哥哥 发表的:啰嗦这么多,直接放最后一张图不好嘛。
引用 @HolaRafael 发表的: a和b占了60了快
引用 @霍勒迪仔公仔 发表的: 。。。。月入100k都亏待你了。。。
引用 @我特严肃KOP 发表的:支持技术贴
引用 @窝大人 发表的: 肤色🏼和黑色最多。
引用 @西北海王 发表的:谁能告诉我哪个颜色的最多
引用 @x0079 发表的: 我的重点是,还是有真D的,都是宝啊
引用 @Kevin3492 发表的:感觉淡蓝色应该挺多,没想到那么少
引用 @窝大人 发表的: 那是你个人的爱好吧😂
引用 @KEIGOCOOL 发表的: 所以我說大部分女JR都在裝B應該沒問題吧!!
引用 @DanielBear 发表的:牛批。。之前也有JR爬过,数据差不多
引用 @大爱满人间荣耀救苍生 发表的:为啥淘宝天天首页给我推荐内衣?
引用 @托尼·帕克 发表的: 买B cup的,大都其实没B
引用 @375016740 发表的:总结的不够好,漏了一个重点: B多,且A+B占了整体的85%。 C+D仅为15%。总结完,心一酸。 可怜的中国男人,妹子就这水平还要这要那各种不满足。 心累可能有人要说我直男,但这就是我总结完内心的第一想法😓😓
引用 @詹姆斯独秀 发表的:我觉得我女盆友b就够了,不敢太奢望!主要是我没女盆友。。。
引用 @不见复关 发表的: 肥婆一大把d,f都有
引用 @用户0373021364 发表的:啥时候统计一下bq长度,女性估计也心酸
引用 @于淡泊中 发表的:肤色第一,黑色第二A,B占了总数的60-70%
引用内容由于违规已被删除
引用 @菲徳尔卡斯特罗 发表的: 那买a的岂不是比我还小
引用 @无聊SAMA君 发表的:就怕变态有文化
引用 @詹天佑为自己 发表的: 10厘米路过
# mongo服务 client = pymongo.MongoClient('mongodb://127.0.0.1:27017/') # jd数据库 db = client.jd # product表,没有自动创建 product_db = db.product # 保存mongo def save_mongo(comments): for comment in comments: product_data = {} # 颜色 # flush_data清洗数据的方法 product_data['product_color'] = flush_data(comment['productColor']) # size product_data['product_size'] = flush_data(comment['productSize']) # 评论内容 product_data['comment_content'] = comment['content'] # create_time product_data['create_time'] = comment['creationTime'] # 插入mongo product_db.insert(product_data) 因为每种商品的颜色、尺寸描述上有差异,为了方面统计,我们进行了简单的数据清洗。这段代码非常的不Pythonic。不过只是一个小demo,大家无视即可。 def flush_data(data): if '肤' in data: return '肤色' if '黑' in data: return '黑色' if '紫' in data: return '紫色' if '粉' in data: return '粉色' if '蓝' in data: return '蓝色' if '白' in data: return '白色' if '灰' in data: return '灰色' if '槟' in data: return '香槟色' if '琥' in data: return '琥珀色' if '红' in data: return '红色' if '紫' in data: return '紫色' if 'A' in data: return 'A' if 'B' in data: return 'B' if 'C' in data: return 'C' if 'D' in data: return 'D' 这几个模块的功能编写完毕,下面只需要将他们联系起来 # 创建一个线程锁 lock = threading.Lock() # 获取评论线程 def spider_jd(ids): while ids: # 加锁 lock.acquire() # 取出第一个元素 id = ids[0] # 将取出的元素从列表中删除,避免重复加载 del ids[0] # 释放锁 lock.release() # 获取评论内容 get_comment_message(id) product_ids = find_product_id('胸罩') for i in (1, 5): # 增加一个获取评论的线程 t = threading.Thread(target=spider_jd, args=(product_ids,)) # 启动线程 t.start() 上面代码加锁的原因是为了防止重复消费共享变量 运行之后的查看MongoDB:
得到结果之后,为了能更直观的表现数据,我们可以用matplotlib库进行图表化展示 import pymongo from pylab import * client = pymongo.MongoClient('mongodb://127.0.0.1:27017/') # jd数据库 db = client.jd # product表,没有自动创建 product_db = db.product # 统计以下几个颜色 color_arr = ['肤色', '黑色', '紫色', '粉色', '蓝色', '白色', '灰色', '香槟色', '红色'] color_num_arr = [] for i in color_arr: num = product_db.count({'product_color': i}) color_num_arr.append(num) # 显示的颜色 color_arr = ['bisque', 'black', 'purple', 'pink', 'blue', 'white', 'gray', 'peru', 'red'] #labeldistance,文本的位置离远点有多远,1.1指1.1倍半径的位置 #autopct,圆里面的文本格式,%3.1f%%表示小数有三位,整数有一位的浮点数 #shadow,饼是否有阴影 #startangle,起始角度,0,表示从0开始逆时针转,为第一块。一般选择从90度开始比较好看 #pctdistance,百分比的text离圆心的距离 #patches, l_texts, p_texts,为了得到饼图的返回值,p_texts饼图内部文本的,l_texts饼图外label的文本 patches,l_text,p_text = plt.pie(sizes, labels=labels, colors=colors, labeldistance=1.1, autopct='%3.1f%%', shadow=False, startangle=90, pctdistance=0.6) #改变文本的大小 #方法是把每一个text遍历。调用set_size方法设置它的属性 for t in l_text: t.set_size=(30) for t in p_text: t.set_size=(20) # 设置x,y轴刻度一致,这样饼图才能是圆的 plt.axis('equal') plt.title("内衣颜色比例图", fontproperties="SimHei") # plt.legend() plt.show() 运行代码,我们发现肤色的最受欢迎 其次是黑色 (钢铁直男表示不知道是不是真的…)
接下来我们再来统计一下size 的分布图,这里用柱状图进行显示 index=["A","B","C","D"] client = pymongo.MongoClient('mongodb://127.0.0.1:27017/') db = client.jd product_db = db.product value = [] for i in index: num = product_db.count({'product_size': i}) value.append(num) plt.bar(left=index, height=value, color="green", width=0.5) plt.show() 运行后我们发现 B size的女性更多一些
小伙伴们你们猜对了吗?嘿嘿~ 链接
🔥 最新回帖
会说话你就出本书吧老铁🐶
抛掉坦克和大妈,太真实了
我直接拉到最下面
🛋️ 沙发板凳
肤色🏼和黑色最多。
教学嘛
大部分女JR都在裝B
應該沒問題吧!!
超80%了…
我的重点是,还是有真D的,都是宝啊
不是很难的东西😄
不过各位海绵宝宝们基本上是穿上是个E,不穿是个B。
这种造福社会的技术值得推广。
我觉得我女盆友b就够了,不敢太奢望!主要是我没女盆友。。。
感觉淡蓝色应该挺多,没想到那么少
买B cup的,大都其实没B
开车???
肤色第一,黑色第二
A,B占了总数的60-70%
总结的不够好,漏了一个重点: B多,且A+B占了整体的85%。 C+D仅为15%。
总结完,心一酸。 可怜的中国男人,妹子就这水平还要这要那各种不满足。 心累
可能有人要说我直男,但这就是我总结完内心的第一想法😓😓
C最耐看,当然d也很好。
不好看
这也不能代表真实size,因为很多A的会买大一号…
班长补充:买b的很多是a,真b能穿c,买cd的还有相当部分是胖子坦克大妈属性
那是你个人的爱好吧😂
怎么可能有人根据我的爱好穿,就是脱了看到的,蓝色真的很多,黑色的只在大街上看到过
@灰灰姑凉
买红色D的宝中之宝
这个销量不配着垫子的销量根本提现不了实际情况
这个
说明你曾经搜索过,还不止一次
淡蓝色不实用啊,买这些贴身衣物,要考虑到外罩颜色太浅/太薄/淋湿水等等情况,所以朴素的颜色比较实用。
也许是很胖
肥婆一大把d,f都有
你得看是多少D 給你一個90D你絕對沒興趣
总要列点数据来来佐证嘛,:不然没有说服力啊
买B的多,不代表真B多。很多A妹子,也喜欢戴B充数。
嘿嘿
空杯
紫色醉骚
里面要塞东西,或者那种特别厚的。
给你一张图,你信吗?
哈哈哈哈真实
啥时候统计一下bq长度,女性估计也心酸
D的也还好,有个前女友就是D的
哈哈哈哈哈哈哈那你说个鸡儿,看的我也一把辛酸泪
楼主要的就是这种🐶
我宣布班长升级为大队长!
大数据 🐶
盲僧,你发现了华点
自动忽略文字
女装大佬???
还有很多aa的可以买,但没有必要
那买a的岂不是比我还小
我bq能有14cm🐶
我怎么感觉身边大部分人都是A偶尔几个B都觉得稀有了。。。
所以郎朗的择偶标准很容易理解了吧
狗头
10厘米路过
第一任女友是F,穿衣服看着胖,骨架大,肉并不多。
后来交往过一任E的炮/友,个高,偏瘦,胸大的不协调,据她说是一次流产后没保养好,暴瘦下来。皮肤很松弛,胸也下垂的厉害。
晓得了
而且会有小胸买大罩,不会有大胸买小罩
看到坦克我笑了,尼玛这是王者荣耀哈哈哈哈哈哈哈哈哈哈哈哈哈哈
一般化吧。。。
真特么小的跟豆粒一样,一点点起伏都没有!绝对不如我个大老爷们胸大,这样的也得戴啊🤣我都怀疑奶孩子的时候,是偷偷揣了瓶牛奶🐮
不怕流氓有文化🐶
要不怎么有自信?
心疼你。。