收藏!Python 全栈必备的 700 个知识点,一次性获得!
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了收藏!Python 全栈必备的 700 个知识点,一次性获得!,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2984字,纯文字阅读大概需要5分钟。
内容图文
![收藏!Python 全栈必备的 700 个知识点,一次性获得!](/upload/InfoBanner/zyjiaocheng/635/78c0476f10b94021bdfa50a8a7f99e60.jpg)
和女朋友看了《大赢家》,里面出来了柳岩,就和女朋友讨论了一下罩杯的问题。
女朋友说A罩杯是最流行的!优秀的人所有都是A!
我和她友好地讨论了许久!
我觉得她就是在狡辩!绝对是在狡辩!
所有我有必要来用python爬取一下中国女性的罩杯数据!
声明:我是为了证明女朋友是在狡辩!绝不是被赶出来了!!
代码如下(评论里有些照片倒是不错,改点代码就能下载了哦):、
import requests import re import time from lxml import etree def cczh(str): #定义一个尺码转换函数,不同的尺寸转换为A/B/C/D/E if 'E' in str: #如果数据中有E则: return 'E' #返回E if 'D' in str: return 'D' if 'C' in str: return 'C' if 'B' in str: return 'B' if 'A' in str: return 'A' if 'XXL' in str: return 'E' if 'XL' in str: return 'D' if 'L' in str: return 'C' if 'M' in str: return 'B' if 'S' in str: return 'A' if '均码' in str: return 'B' if '大' in str: return 'C' if '小' in str: return 'A' headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36" } #设置一个请求头来突破反爬 all_sizes = [] #用一个空列表all_sizes来准备装尺寸数据 """获得商品id""" for i in range(1,51): #依次生成1-50来进行网址拼接 #拼接网址 url = "https://list.jd.com/list.html?cat=1315,1345,1364&ev=exbrand_90320&page=" + str(i) + "&sort=sort_rank_asc&trans=1&JL=6_0_0#J_main" res = requests.get(url,headers=headers).text #用requests的get函数来获取信息,用headers=headers来进行伪装.text转换为文本信息 res_xpath = etree.HTML(res) #转换为xpath类型 sp_ids = res_xpath.xpath('//*[@id="plist"]/ul/li/div/@data-sku') #用xpath提取商品的id time.sleep(5) #设置5秒延时 for sp_id in sp_ids: #依次从sp_ids中提取sp_id来拼接 """获得评论size""" for i in range(1,51): #依次生成1-50来拼接评论网址 url = "https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId="+ str(sp_id) + "&score=0&sortType=5&page=" + str(i) + "&pageSize=10&isShadowSku=0&rid=0&fold=1" res = requests.get(url,headers=headers).text #用requests的get函数来获取信息,用headers=headers来进行伪装.text转换为文本信息 sizes = re.findall('"productSize":"(.*?)"',res) #用正则表达式获得size信息 print(sizes) #打印一下尺寸信息 for size in sizes: #依次循环sizes中的信息 all_sizes.append(size) #将信息添加到all_sizes中 time.sleep(5) #设置5秒延时 """进行尺码转换""" abcds = [] #用一个空列表abcds准备装尺寸数据 for size in all_sizes: #依次循环all_sizes中的信息 size = cczh(size) #用函数cczh来讲size的尺寸进行转换 abcds.append(size) #转换后的数据添加到abcds列表中 print(abcds) print(len(abcds)) #查看尺寸总数量 """进行尺寸统计""" tjs = set(abcds) #用列表abcds创建一个无序不重复元素集tjs,也就是删除重复元素,仅保留【A/B/C/D/E】等 for tj in tjs: #依次从tjs中提取数据 count = 0 #定义一个变量count=0进行计数 for abcd in abcds: #从abcds列表中依次提取数据 if tj == abcd: #如果abcd==tj则: count += 1 #count = count + 1 数量增加1 print(tj, ": ", count) #打印显示各个罩杯的数量
数据出来了!
631550
E : 3190
A : 144810
None : 1590
B : 331060
C : 132000
D : 18900
从京东数据来看,B的销量遥遥领先!A和C相差不大!E数量相对较小!至于F/G/H……的数量就更少了!
内容总结
以上是互联网集市为您收集整理的收藏!Python 全栈必备的 700 个知识点,一次性获得!全部内容,希望文章能够帮你解决收藏!Python 全栈必备的 700 个知识点,一次性获得!所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。