当前位置: 首页 > news >正文

广州网站网站建设页面设计尺寸

广州网站网站建设,页面设计尺寸,wordpress忘记密码,建设部网站人员查询目录 前言数据来源分析1. 明确需求2. 抓包分析#xff1a;通过浏览器自带工具: 开发者工具 代码实现步骤: 发送请求 - 获取数据 - 解析数据 - 保存数据发送请求解析数据保存数据 数据可视化先读取数据泳衣商品性别占比商品品牌分布占比各大品牌商品售价平均价格各… 目录 前言数据来源分析1. 明确需求2. 抓包分析通过浏览器自带工具: 开发者工具 代码实现步骤: 发送请求 - 获取数据 - 解析数据 - 保存数据发送请求解析数据保存数据 数据可视化先读取数据泳衣商品性别占比商品品牌分布占比各大品牌商品售价平均价格各大品牌商品原价平均价格唯品会泳衣商品售价价格区间 前言 唯品会是中国领先的在线特卖会电商平台之一它以“品牌特卖会”的模式运营为会员提供品牌折扣商品。唯品会的商品包括服装、鞋类、箱包、美妆、家居、母婴、食品等各类品牌产品。 这就是今天的受害者我们要拿取上面的泳衣数据然后可以做些数据可视化 数据来源分析 1. 明确需求 明确采集网站以及数据 网址: https://category.vip.com/suggest.php?keyword%E6%B3%B3%E8%A1%A3ff235|12|1|1 数据: 商品信息 2. 抓包分析通过浏览器自带工具: 开发者工具 打开开发者工具: F12 / 右键点击检查选择network刷新网页: 让网页数据重新加载一遍搜索关键字: 搜索数据在哪里 找到数据包: 50条商品数据信息 整页数据内容: 120条 -- 分成三个数据包 1. 前50条数据 -- 前50个商品ID 2. 中50条数据 -- 中50个商品ID 3. 后20条数据 -- 后20个商品ID 已知: 数据分为三组 -- 对比三组数据包请求参数变化规律 请求参数变化规律: 商品ID 分析找一下 是否存在一个数据包, 包含所有商品ID 如果想要获取商品信息 -- 先获取所有商品ID -- ID存在数据包 代码实现步骤: 发送请求 - 获取数据 - 解析数据 - 保存数据 发送请求 我们定义了要爬取的URL地址并设置了User-Agent请求头以模拟浏览器发送请求。 使用requests.get方法发送GET请求并将响应保存在response变量中。 headers {# 防盗链 告诉服务器请求链接地址从哪里跳转过来Referer: https://category.vip.com/,# 用户代理, 表示浏览器基本身份信息User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) } # 请求链接 url https://mapi.vip.com/vips-mobile/rest/shopping/pc/search/product/rank data {# 回调函数# callback: getMerchandiseIds,app_name: shop_pc,app_version: 4.0,warehouse: VIP_HZ,fdc_area_id: 104103101,client: pc,mobile_platform: 1,province_id: 104103,api_key: 70f71280d5d547b2a7bb370a529aeea1,user_id: ,mars_cid: 1689245318776_e2b4a7b51f99b3dd6a4e6d356e364148,wap_consumer: a,standby_id: nature,keyword: 泳衣,lv3CatIds: ,lv2CatIds: ,lv1CatIds: ,brandStoreSns: ,props: ,priceMin: ,priceMax: ,vipService: ,sort: 0,pageOffset: 0,channelId: 1,gPlatform: PC,batchSize: 120,_: 1689250387620, } # 发送请求 -- Response [200] 响应对象 response requests.get(urlurl, paramsdata, headersheaders)解析数据 然后我们定义了起始标签和结束标签通过循环的方式遍历文本并提取每个商品的名称和价格。 # 商品ID - 120个 products [i[pid] for i in response.json()[data][products]] # 把120个商品ID 分组 -- 切片 起始0 结束50 步长:1 # 列表合并成字符串 product_id_1 ,.join(products[:50]) # 提取前50个商品ID 0-49 product_id_2 ,.join(products[50:100]) # 提取中50个商品ID 50-99 product_id_3 ,.join(products[100:]) # 提取后20个商品ID 100到最后 product_id_list [product_id_1, product_id_2, product_id_3]for product_id in product_id_list:# 请求链接link https://mapi.vip.com/vips-mobile/rest/shopping/pc/product/module/list/v2# 请求参数params {# callback: getMerchandiseDroplets2,app_name: shop_pc,app_version: 4.0,warehouse: VIP_HZ,fdc_area_id: 104103101,client: pc,mobile_platform: 1,province_id: 104103,api_key: 70f71280d5d547b2a7bb370a529aeea1,user_id: ,mars_cid: 1689245318776_e2b4a7b51f99b3dd6a4e6d356e364148,wap_consumer: a,productIds: product_id,scene: search,standby_id: nature,extParams: {stdSizeVids:,preheatTipsVer:3,couponVer:v2,exclusivePrice:1,iconSpec:2x,ic2label:1,superHot:1,bigBrand:1},context: ,_: 1689250387628,}# 发送请求json_data requests.get(urllink, paramsparams, headersheaders).json()for index in json_data[data][products]:# 商品信息attr ,.join([j[value] for j in index[attrs]])# 创建字典dit {标题: index[title],品牌: index[brandShowName],原价: index[price][marketPrice],售价: index[price][salePrice],折扣: index[price][mixPriceLabel],商品信息: attr,详情页: fhttps://detail.vip.com/detail-{index[brandId]}-{index[productId]}.html,}csv_writer.writerow(dit)print(dit)保存数据 然后我们使用open函数创建一个CSV文件并指定文件名、写入模式、编码方式等参数。然后使用csv.DictWriter初始化一个写入器对象并指定表头。 我们使用writer.writeheader()来写入CSV文件的表头然后遍历items列表使用writer.writerow()将每个商品的数据写入CSV文件中。 f open(商品.csv, modea, encodingutf-8, newline) csv_writer csv.DictWriter(f, fieldnames[标题,品牌,原价,售价,折扣,商品信息,详情页, ]) csv_writer.writeheader()数据可视化 先读取数据 df pd.read_csv(商品.csv) df.head()泳衣商品性别占比 from pyecharts import options as opts from pyecharts.charts import Bar from pyecharts.faker import Fakerc (Bar().add_xaxis(sex_type).add_yaxis(, sex_num).set_global_opts(title_optsopts.TitleOpts(title泳衣商品性别占比, subtitle),brush_optsopts.BrushOpts(),) ) c.load_javascript()from pyecharts import options as opts from pyecharts.charts import Piec (Pie().add(, [list(z) for z in zip(sex_type, sex_num)]).set_global_opts(title_optsopts.TitleOpts(title泳衣商品性别占比)).set_series_opts(label_optsopts.LabelOpts(formatter{b}: {c})) ) c.render_notebook()商品品牌分布占比 shop_num df[品牌].value_counts().to_list() shop_type df[品牌].value_counts().index.to_list() c (Pie().add(,[list(z)for z in zip(shop_type, shop_num)],center[40%, 50%],).set_global_opts(title_optsopts.TitleOpts(title商品品牌分布占比),legend_optsopts.LegendOpts(type_scroll, pos_left80%, orientvertical),).set_series_opts(label_optsopts.LabelOpts(formatter{b}: {c})) ) c.render_notebook()各大品牌商品售价平均价格 # 按城市分组并计算平均薪资 avg_salary df.groupby(品牌)[售价].mean() ShopType avg_salary.index.tolist() ShopNum [int(a) for a in avg_salary.values.tolist()] # 创建柱状图实例 c (Bar().add_xaxis(ShopType).add_yaxis(, ShopNum).set_global_opts(title_optsopts.TitleOpts(title各大品牌商品售价平均价格),visualmap_optsopts.VisualMapOpts(dimension1,pos_right5%,max_30,is_inverseTrue,),xaxis_optsopts.AxisOpts(axislabel_optsopts.LabelOpts(rotate45)) # 设置X轴标签旋转角度为45度).set_series_opts(label_optsopts.LabelOpts(is_showFalse),markline_optsopts.MarkLineOpts(data[opts.MarkLineItem(type_min, name最小值),opts.MarkLineItem(type_max, name最大值),opts.MarkLineItem(type_average, name平均值),]),) )c.render_notebook()各大品牌商品原价平均价格 # 按城市分组并计算平均薪资 avg_salary df.groupby(品牌)[原价].mean() ShopType_1 avg_salary.index.tolist() ShopNum_1 [int(a) for a in avg_salary.values.tolist()] # 创建柱状图实例 c (Bar().add_xaxis(ShopType_1).add_yaxis(, ShopNum_1).set_global_opts(title_optsopts.TitleOpts(title各大品牌商品原价平均价格),visualmap_optsopts.VisualMapOpts(dimension1,pos_right5%,max_30,is_inverseTrue,),xaxis_optsopts.AxisOpts(axislabel_optsopts.LabelOpts(rotate45)) # 设置X轴标签旋转角度为45度).set_series_opts(label_optsopts.LabelOpts(is_showFalse),markline_optsopts.MarkLineOpts(data[opts.MarkLineItem(type_min, name最小值),opts.MarkLineItem(type_max, name最大值),opts.MarkLineItem(type_average, name平均值),]),) )c.render_notebook()唯品会泳衣商品售价价格区间 pie1 (Pie(init_optsopts.InitOpts(themedark,width1000px,height600px)).add(, datas_pair_2, radius[35%, 60%]).set_series_opts(label_optsopts.LabelOpts(formatter{b}:{d}%)).set_global_opts(title_optsopts.TitleOpts(title唯品会泳衣商品\n\n售价价格区间, pos_leftcenter, pos_topcenter,title_textstyle_optsopts.TextStyleOpts(color#F0F8FF, font_size20, font_weightbold),)).set_colors([#EF9050, #3B7BA9, #6FB27C, #FFAF34, #D8BFD8, #00BFFF, #7FFFAA]) ) pie1.render_notebook() 问题解答 · 源码获取 · 技术交流 · 抱团学习请联系
http://www.dnsts.com.cn/news/85216.html

相关文章:

  • 企业网站建设经验分享忒低网站长怎么做
  • 川畅科技搜搜 网站设计那个视频网站好
  • 广州seo网站多少钱百度软件下载安装
  • 自动化系统网站建设首选公司做设计用的素材下载网站
  • 制作查询网站有没有建筑学做区位分析的网站
  • 网站改域名如何做百度优化最强大的wordpress
  • 做网站被捉定西市建设局网站
  • 福安市网站建设寻找哈尔滨网站建设
  • 山东省住房和城乡建设厅注册中心网站网页开发的基本流程是什么
  • 家装公司建设网站淄博网站建设公司三农
  • ireal 网站建设seo引擎优化是什
  • 兰州专业网站建设报价小程序怎么进入公众号
  • 长春网络营销网站网站设计规划报告
  • 宣讲网站建设网站 被黑
  • 鹤山做网站公司中国国音电商平台官网
  • 杭州智能模板建站河南做网站公司排名
  • 网站虚拟主机有什么用网页设计基础实训计划
  • 外贸营销型网站建设多少钱微信公众号登录平台官网
  • 网站关停怎么做河南网站推广优化公司哪家好
  • 超值高端网站设计wordpress建站 产品详情页
  • 哪里有网站制作建设wordpress美化底部
  • 网站备案太麻烦自己做公司网站成本
  • 鑫牛元网站建设什么是小手机型网站
  • 网站设置gif禁用本标准在住房城乡建设部门户网站
  • 交通信用网站建设网站建设基本流程ppt
  • 建湖网站建设价格成都网站制作龙兵科技
  • 手机网站设计的项目描述企业网站建设457216336
  • 书本翻页 网站模板什么平台可以发广告免费
  • 建设什么网站可以上传视频wordpress如何邀请人看
  • 网页游戏网站hpjywordpress企业源码