取消

某电商商品属性获取分析

2018-10-31 阅读:1620
文章分类:技术干货

为完成一个小型爬虫项目,在并未使用该平台提供的API情况下,细致分析了国内某著名电商网站商品属性的获取思路和方法,兹此记录分享,学习交流。

静态页面部分

为了获取独立商城网站建设静态页面部分的内容,需要使用firefox的开发者功能禁用javascript,如图

某电商商品属性获取分析

勾选"Disable JavaScript"。刷新页面后可见。通过静态页面可获取标题,商品ID,分类号,商品URL,图片url等内容。可直接使用正则表达式或xpath等工具分析获得,这里不再赘述。

动态内容部分

该网站大部分商品属性都是通过ajax动态获取的。还是通过浏览器来分析。取消勾选"Disable JavaScript"后,使用"Network"工具可对服务器响应的包进行抓包和分类。为避免反复重新加载页面时缓存的影响,勾选"Disable Cache"选项。先打开"Network"界面,然后刷新页面,可获得加载过程的抓包内容。ajax请求返回的数据为json或js类型。

例如:某json数据,url为

某电商商品属性获取分析

可在network工具箱内查看其response内容为

某电商商品属性获取分析

对照页面内容后发现其中p字段正是商品价格数据!

通过直接打开链接得到json串为

某电商商品属性获取分析

此response中带有回调函数名"cnp",观察在url中也有一个相同字段。遂尝试在url中去掉该字段,重新请求后

某电商商品属性获取分析

获得json:

某电商商品属性获取分析

继续尝试删除请求中的get参数,最终发现可用

某电商商品属性获取分析

正常获取到相同的数据。

python解析代码:

某电商商品属性获取分析

某电商商品属性获取分析

获取到网上商城系统网站价格数据,方便了自动化生成。其余不能通过静态内容获取的属性均可类比分析尝试获得。

文章来源:segmentfault

<数商云(www.shushangyun.com)是国内知名企业级电商平台提供商,为企业级商家提供最佳的系统开发(多种模式电商平台搭建:B2B/B2B2C/B2C/O2O/新零售等)、供应链系统搭建及电商行业解决方案服务>

点赞 | 0
数商云是一家全链数字化运营服务商,专注于提供SCM/企业采购/SRM供应商/DMS经销商/渠道商等管理系统,B2B/S2B/S2C/B2B2C/B2C等电商系统,从“供应链——生产运营——销售市场”端到端的全链数字化产品和方案,致力于通过数字化和新技术为企业创造商业数字化价值。
评论
发表
联系我们
在线咨询 4008-868-127
售前咨询 189-2432-2993
市场合作 steven@shushangyun.com
广州市数商云网络科技有限公司
© 2013 - 2021 shushangyun.com
电话咨询 在线咨询 系统演示