苏宁百万级商品爬取 简述

简介: 代码下载链接 苏宁百万级商品爬虫目录思路讲解 类别爬取思路讲解 类别页数爬取商品爬取3.1 思路讲解 商品爬取13.2 思路讲解 商品爬取23.3 代码讲解 商品爬取索引讲解4.1 代码讲解 索引建立4.2 代码讲解 索引查询声明本系列文章+代码案例时对爬虫的内容学习概括,希望更多的人知道如何使用c#进行简单爬虫项目的开发,并不存在恶意工具部分电商网站的观念。

代码下载链接 苏宁百万级商品爬虫

目录

  1. 思路讲解 类别爬取
  2. 思路讲解 类别页数爬取
  3. 商品爬取
    3.1 思路讲解 商品爬取1
    3.2 思路讲解 商品爬取2
    3.3 代码讲解 商品爬取
  4. 索引讲解
    4.1 代码讲解 索引建立
    4.2 代码讲解 索引查询

声明

本系列文章+代码案例时对爬虫的内容学习概括,希望更多的人知道如何使用c#进行简单爬虫项目的开发,并不存在恶意工具部分电商网站的观念。分享的的代码中对网页爬取都做了休眠等待(200-500)毫秒的限制,希望大家不要恶意使用。

学习回顾

首先简单概述一下自己的学习计划,在爬虫这个模块的学习过程中。可以了解到很多的知识,例如

  1. Xpath语法(网页解析),css(网页解析),正则表达式(文本处理或网页解析)
  2. .net 第三方爬虫类库 html agility pack +第三方爬虫框架(用的相对较少) 学习的时候还是趋向于写一些底层的东西
  3. 异步多线程,主要用在苏宁百万数据爬取时。多线程爬取,多线程存储。
  4. Lucene索引和分词 简单使用,并未深入。主要时对爬取的百万数据建立索引库,做一个简单的查询。

运行环境+技术选型

  • ide 使用 vs 2017
  • 数据库 sqlserver 2008r2 或mysql
  • 语言 c#

一、开发预估周期和安排

1、开发周期

因为工作时无聊想到的东西,所以在不耽误工作的情况下,编码周期为1个礼拜。

2、程序模块抽象描述

数据库相关
  • 实体
  • 数据库访问层
  • 业务逻辑层
网页爬取
  • 分析器(包含取数据功能)
  • 服务层(取分析器数据,调用业务逻辑层方法,将数据入库)
索引
  • 分词帮助(盘古分词器)
  • 索引帮助
界面描述

采用winform程序的形式,分首页+4个子页面
首页是对主要功能的概述,添加4个按钮,每个按钮触发新的页面,按钮分别为:

  • 数据初始化(进行数据初始化功能)
  • 商品类别(对商品类别的爬取和更新)
  • 商品内容(对商品内容的爬取和更新)
  • 建立索引(使用Lucene+分词器建立索引)
  • 查询产品

三、开发中可能遇到的问题

  1. 因为之前都是对单页面的爬取,或者是对某些分页数据爬取,都只是一个小demo。所以在设计程序结构的过程中一定会存在问题。当我已经完成项目后,重新回顾自己的代码也觉得好多地方存在可以修改的地方。
  2. 对很多技术的生疏,异步多线程在工作中不长使用,没有踩过坑,所以一定会跌的很惨。xpath,正则这些语法的遗忘
  3. 界面设计可能会很丑,不美观

四、功能设计图

在新建解决方案后,我首先建立一个demo项目,这个项目只是用来做效果图,用来让自己对所做的程序有个大概的布局。
首页设计图:
首页是对功能的详细抽象描述,所以定义三个模块,每个模块再放置自己的内容。
“初始化数据”只是一个按钮,点击弹出提示框,点击确认清理所有产品数据


img_45134665355e4e3a05a9f334c7639ce4.png
首页.png
img_3924615ffb21a30602dfba78a727fe25.png
商品类别设计图.png
img_bb0539107b00270f492cf875b0728684.png
商品内容设计图.png
img_0428a541720b7f58aa9e0453200096a6.png
建立索引设计图.png
img_687556ed1b208cae02cb86d3ed7a3b62.png
查询产品设计图.png

五、程序准备:

对商品进行爬取,首先要知道有多少类别,不同类别数据性展示是否为不同形式。如果为不同形式,那就要区分爬取,如果相同,那就更加方便。
产品有那么多属性,取哪些字段,百万的数据量应该如何存储,同样的百万数量应该如果查询,这都是在前期应该考虑好的问题。不然等开始编码再修改就很麻烦

目录
相关文章
|
4月前
|
存储 搜索推荐 数据挖掘
淘宝商品详情API:挖掘实时数据金矿,点燃电商增长引擎
随着互联网的快速发展,电子商务在全球范围内得到了广泛应用。作为中国电商市场的领军者,淘宝不仅拥有庞大的用户群体和海量的商品数据,还提供了一系列的API接口,使得第三方开发者可以方便地获取并利用这些数据。其中,淘宝商品详情API是淘宝开放平台中非常重要的一项接口,它能够获取到淘宝网内商品的详细信息,从而帮助开发者更好地服务用户,提升电商业务的运营效率。 本文将详细介绍淘宝商品详情API的应用场景、使用方法和注意事项,并通过示例代码展示如何使用该API获取商品详情数据。同时,本文还将探讨如何利用这些数据实现个性化推荐、提升销售转化率等业务目标。
|
6月前
|
编解码 搜索推荐 测试技术
读书笔记第四讲:《百万级并发商品服务架构解密》丁鸣亮
读书笔记第四讲:《百万级并发商品服务架构解密》丁鸣亮
《QQ 空间百亿级流量的社交广告系统海量实践》电子版地址
QQ 空间百亿级流量的社交广告系统海量实践
47 0
《QQ 空间百亿级流量的社交广告系统海量实践》电子版地址
《QQ空间平台百亿级流量广告系统海量服务实践》电子版地址
QQ空间平台百亿级流量广告系统海量服务实践
56 0
《QQ空间平台百亿级流量广告系统海量服务实践》电子版地址
|
消息中间件 缓存 Dubbo
修正版 | 面对千万级、亿级流量怎么处理?
这是之前发过的一篇文章,写完之后小问题挺多的,于是还是重新改一版。
修正版 | 面对千万级、亿级流量怎么处理?
|
存储 缓存 算法
刘志勇:微博短视频百万级高并发架构
本文来自新浪微博视频平台资深架构师刘志勇在LiveVideoStackCon 2018讲师热身分享,并由LiveVideoStack整理而成。
2549 0
|
数据可视化 安全 容灾
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(1)
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(1)
137 0
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(1)
|
SQL 缓存 监控
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(6)
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(6)
323 0
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(6)
|
设计模式 监控 搜索推荐
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(2)
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(2)
270 0
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(2)
|
设计模式 数据可视化 测试技术
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(3)
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(3)
145 0
【技术干货】40页PPT分享万亿级交易量下的支付平台设计(3)

热门文章

最新文章