将淘宝数据包导入自己的商城系统

淘宝网有一个淘宝助理,可以方便的将淘宝店的商品资源导出成csv格式的数据包。很多商城系统为了能快速输入商品,都会要求开发者能最大限度的利用淘宝数据包直接导入产品数据。

当然,数据包的产品字段与商城的产品表字段肯定不可能完全一致,但"宝贝名称","宝贝价格","宝贝描述"这三个字段,几乎是所有商城系统都有的.

下面是二种处理方法:

一、直接分析csv

1.淘宝的csv数据包是用"\t"做为字段间的分隔符,每行数据是用"\n"做为行分隔符
2.要注意的是:宝贝描述(html代码)本身也会包含换行符号,不过不是"\n",而是"\r\n"---幸好是这样,不然的话,宝贝描述本身的换行符与数据每行的分隔符混在一起,就很难区分了.

下面是示例关键代码;

if (IsPostBack)
 {
       HttpFileCollection fc = Request.Files;

        for (int i = 0; i < fc.Count; i++)
         {
                HttpPostedFile _file = fc[i];
                string ext = Path.GetExtension(_file.FileName).ToLower();
                string type = _file.ContentType;
                if (ext == ".csv" && type == "application/vnd.ms-excel")
                    {
                        StreamReader sr = new StreamReader(_file.InputStream);

                        string sHeader = sr.ReadLine();
                        string sBody = sr.ReadToEnd();

                        string sTemp = sBody.Replace("\r\n", "");//将宝贝描述html代码中的"\r\n"去掉

                 string[] arrData = sTemp.Split('\n'); //这里已经将每行的数据保存到数组arrData里了,数组里的每个元素再用"\t"拆分,就是每行各字段的值

//...

优缺点:通用性强,也不依赖于其它任何组件,简单高效。但是如果以后淘宝的html编辑器修改了,比如保存时把"\r\n"换成"\n",这种方法就不管用了.

二、借用oledb把数据包当作db来操作

oledb可以方便的操作access,excel等内容,我们可以把cvs文件在excel里另存为xls格式,然后就可以用oledb连接,用sql来查询了

HttpFileCollection fc = Request.Files;

                if (fc.Count <= 0) {
                    Utils.Alert("请先上传数据包!", "javascript:window.history.back");
                }

                for (int i = 0; i < fc.Count; i++)
                {
                    HttpPostedFile _file = fc[i];
                    string ext = Path.GetExtension(_file.FileName).ToLower();
                    string type = _file.ContentType;
                    if (ext == ".xls" && (type == "application/octet-stream"))
                    {
                        string _path = Server.MapPath("/upload/xls/");
                        Utils.CreateDir(_path);
                        string _filePath = _path + "product.xls";
                        _file.SaveAs(_filePath);//先保存到服务器

                        DataTable dtTable = new DataTable();

                        #region
                        using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + _filePath + ";Extended Properties=Excel 8.0;"))
                        {
                            conn.Open();

                            //获取Sheet的名字。
                            DataTable schemaTable = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, new Object[] { null, null, null, "TABLE" });
                            OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM [" + schemaTable.Rows[0]["TABLE_NAME"] + "]", conn);//默认查询第一个工作表
                            try
                            {
                                adapter.Fill(dtTable);
                            }
                            catch (Exception ex)
                            {
                                //...
                            }
                        }

                        //to do list。。。

                    }
                    else {
                        Utils.Alert("数据包格式不对!", "javascript:window.history.back()");
                    }
                }

优缺点:使用方便,可以把数据包当成常规的DataTable来操作,方便了数据库开发人员。但是服务器上必须要有oledb组件(而且oledb在64位系统下默认是跑不起来的)

时间: 2010-06-03

将淘宝数据包导入自己的商城系统的相关文章

手把手教你解决ECshop导入淘宝数据包乱码问题

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 公司打算将重点从淘宝转移到B2C上边,于是把我招进来了,经过两个月的时间,B2C网站搭建起来,但是在导入淘宝数据包的时候出现问题了,那就是数据乱码,在网上找了很久都没有找到真正可以解决的办法,那就只能自己搞了,还好最好被我捣鼓出来了. 我用的是ecshop2.73的版本,其他版本没有验证,本人只保证同版本的可以用. 前期准备: 1.利用淘宝助

欧洲杯正式开赛前约一个月的淘宝数据

东方网6月13日消息:http://www.aliyun.com/zixun/aggregation/2727.html">欧洲杯开赛,各球队及球星的球衣热销在意料之中.然而开赛后球队及球员的表现而产生的销量往往比球队和球员个真实水平有些虚高.而在正式开赛前的数据或许是对球员和球队认可度更真实的体现. 以下为5月1日至6月3日,本届欧洲杯正式开赛前约一个月的淘宝数据(不包括天猫商城) 连夺欧洲杯和世界杯冠军,西班牙队球衣的销量在榜首顺理成章,老牌强队德国意大利紧随其后.葡萄牙队球衣的销量或

淘宝网上海宣布面向全球首度开放淘宝数据,每天产生数据量达到7个T

3月31日,淘宝网在上海正式宣布,将面向全球首度开放淘宝数据,商家.企业及消费者将在未来分享到来自淘宝全网的海量原始数据. 据了解,淘宝将除了涉及个人隐私及企业机密之外的交易数据全部对外部开放.数据开放分为三个层次:其一为原始的基础数据,淘宝实行免费开放策略.比如涉及电子商务行业的宏观数据,以及让消费者了解最新消费风向标的数据. 其二为经过简单分析之后的标准化产品,比如涉及各个行业市场情况.消费者行为研究等商业数据,淘宝将通过商业方式开放.据悉,淘宝已于本周尝试推出针对普通卖家的300元数据包月

阿里巴巴宁朗:淘宝数据可视化实践

文章讲的是阿里巴巴宁朗:淘宝数据可视化实践,2014年4月10-12日,第五届中国数据库技术大会在北京五洲皇冠国际酒店隆重举行.本届大会的主题为"大数据技术探索与价值发现",参会规模达到1,800人.大会邀请近百位顶级技术专家和行业领袖分享数据库与大数据技术的最新动态,及其在行业领域里的应用部署和管理经验. 自2010年以来,国内领先的IT专业网站IT168联合旗下ITPUB.ChinaUnix两大技术社区,已经成功举办了四届中国数据库技术大会,每届大会与会规模超过千人,是目前国内最受

淘宝数据:B罩杯销量最多

现在,飞机场.太平公主成为大家心目中的敏感词,女星都在争着显摆事业线,人们对胸部的关注似乎达到了有史以来的最高点.前日,就有媒体报道称谷歌targetmap发布了世界各地女性平均胸部大小分布图,包括中国和日本在内的诸多亚洲.非洲国家,则被代表A罩杯的绿色覆盖.不过据文胸卖家表示,云南女性可是超过了这一标准线. 淘宝数据:B罩杯销量最多 前日,有媒体报道称,谷歌targetmap发布了世界各地女性平均胸部大小分布图,根据各个颜色代表的胸部大小不同,俄罗斯国土全被代表D罩杯的红色覆盖,而包括中国和日

淘宝数据公布2011年度趣味数据宁波表现抢眼

浙江在线02月28日讯昨天,http://www.aliyun.com/zixun/aggregation/7653.html">淘宝数据公布2011年度趣味数据.其中,宁波数度登上"最疼爱老婆"."最危机感"等各类榜首,表现颇为"抢眼". 除此之外,宁波也成为最容易"撞衫"和最"居安思危"的城市.数据显示,在2011年淘宝热卖女装产品中,宁波女性购买最为集中,"撞衫"指

互动百科HDwiki与淘宝力捧专业百科式商城

中介交易 SEO诊断 淘宝客 云主机 技术大厅 2011年1月,由互动百科HDwiki与阿里妈妈共同打造的淘宝版HDwiki(女装版)在阿里妈妈网站正式上线.一个多月以来,已有众多站长安装使用了淘宝版HDwiki(女装版). HDwiki作为中国第一款拥有自主知识产权的中文Wiki系统,由互动在线(北京)科技有限公司于2006年 11月28 日正式推出,力争为给众多的 Wiki 爱好者提供一个免费.易用.功能强大的 Wiki 建站系统.HDwiki在易用性和功能可操控性等方面都获得了广大中小站长

淘宝数据:愚人节商品畅销 电影票团购大热

愚人节还未到,可是各种整蛊玩具已经漫天飞了,愚人节经济开始升温. 据淘宝数据显示,长春人均网购整蛊消费145元,排列全国第一. 愚人节商品网上热销 昨日,东亚记者在购物网站上搜索"整蛊玩具",一共出现了4129件宝贝,而且各种恶搞的整蛊玩具五花八门.创意十足.东亚记者看到,这些玩具有"搞怪搞笑假牙套"."仿真蟑螂"."仿真蛇"."喷水马桶"."放屁坐垫"等等,价格低的有0.2元钱,高的也

淘宝数据描绘全国“失眠地图”

"每天大概11点多上床,然后拿着手机看看视频,逛逛网店,1点左右才会有睡意."在杭州莫干山路一栋商务楼里工作的30岁白领丁先生吐槽.其实啊,越来越多的人开始睡不着觉了,"睡着的人都是相似的,睡不着的却各有各的理由","亲,你是肿么睡不着呢?"淘宝掌柜们借势做起了"助眠"产品的买卖. 昨天,淘宝公布的一组数据也颇为好玩,睡不着觉的人群有着非常明显的地域特征.在最近5个月买眼罩.耳塞这两种助眠产品,人均购买量最多的TOP5城市中,