前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何通过Power BI来抓取1688的产品数据进行分析?

如何通过Power BI来抓取1688的产品数据进行分析?

作者头像
逍遥之
发布2020-03-24 15:37:13
1.4K0
发布2020-03-24 15:37:13
举报
文章被收录于专栏:数据技巧数据技巧

在做项目之前我们肯定得先分析下需求,我看下我们需要干什么,达到什么样的目的?

我们有一张表,列了一些1688.com上的产品链接,预计采购数量,需要我们给一个大致价格。

1. 现有资源

数据表:

抓取数据表:

通过得到抓取后的单价及数量要求来实现价格的计算。

2. 分析问题

  • 抓取产品页面上产品的价格
  • 抓取产品页面上数量的要求
  • 把价格和数量要求一一对应

首先我们来看下价格。目前可以归纳总结的一共有3种左右的价格形势,我们来看下不同的价格情况。

单独一个价格

价格区间

分段报价

链接是随机的,所以我们如果要进行抓取,至少要对数据源的格式要有所了解,这样才能避免在抓取的过程中出错。

3. 处理问题

因为我们使用的是PBI,所以我们可以使用PBI独有的函数,Html.Table和BrowserContents函数的组合。具体的使用方式可以上PQfans网站看下畅心写的文章。

A. 分析各种情况价格的CSS定位

  • 分段报价

#mod-detail-price > div > table > tbody > tr.price > td.ladder-3-1 > span.value.price-length-5

  • 价格区间

#mod-detail-price > div > table > tbody > tr.price > td.ladder-1-1

  • 单个价格

#mod-detail-price > div > table > tbody > tr.price > td.ladder-1-1 > div > span.value

通过3种不同情况的定位,我们可以得到一个包含所有价格情况的定位 tr.price>*

B. 清洗抓取后的信息

我们以分阶段链接的产品来尝试,通过抓取我们得到的是一个表格形式的结果。

通过清洗我们得到如下这种结果,也就是我们所需要3个阶段的价格情况。

同理我们可以尝试抓取数量

通过清洗后得到如下结果,代表了数量的区间上限。

C. 合并数据

代码语言:javascript
复制
Table.AddColumn(删除的副本1,                 "自定义",                 each Table.FromColumns({_1688_price([#"Cсылка на товар *"])[目标],                                        _1688_number([#"Cсылка на товар *"])[目标2]                                       },                                      {"单价","数量要求"}                                      )                )

这里使用了2个自定义函数_1688_price_1688_number来进行价格和数量的抓取。把抓取后的数据再通过Table.FromColumns进行合并。

最后展开即可。

4. 要点总结

  • 分析css定位并抓取所需要的数据。
  • 结合各类抓取结果来进行清洗数据。
  • 通过多列合并达到所需要的对应关系。 

如果觉得有帮助,那麻烦您进行转发,让更多的人能够提高自身的工作效率。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据技巧 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 在做项目之前我们肯定得先分析下需求,我看下我们需要干什么,达到什么样的目的?
  • 我们有一张表,列了一些1688.com上的产品链接,预计采购数量,需要我们给一个大致价格。
    • 1. 现有资源
      • 2. 分析问题
        • 3. 处理问题
          • A. 分析各种情况价格的CSS定位
          • B. 清洗抓取后的信息
          • C. 合并数据
        • 4. 要点总结
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档