【开源】天猫店整店商品图片采集工具:屠刀(包含题图、颜色图、内容图,适用于服装类,按货号保存商品图片)...

本文主要是介绍【开源】天猫店整店商品图片采集工具:屠刀(包含题图、颜色图、内容图,适用于服装类,按货号保存商品图片)...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

废话少说,先上程序运行时的图片

 

开源地址:

https://github.com/xland/TuDao

 

编译好的版本下载地址:

https://github.com/xland/TuDao/blob/master/%E5%8F%91%E5%B8%83%E5%8C%85/%E5%B1%A0%E5%88%80.zip?raw=true

 

说明:

天猫店整店商品图片采集工具(包含题图、颜色图、内容图,适用于服装类,按货号保存商品图片),目前只测试了一个店铺,可能会存在一些问题,收费负责解决问题。

 

关键代码

下载图片的关键代码:

        static void getPic(string url,string name){ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate;HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;request.UseDefaultCredentials = true;HttpWebResponse response = request.GetResponse() as HttpWebResponse;Stream stream = response.GetResponseStream();var fileStream = new FileStream(name, FileMode.Create, FileAccess.Write);stream.CopyTo(fileStream);fileStream.Dispose();stream.Close();}

 

获取HTML的关键代码:

        static string getHtml(string url){ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate;HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;request.UseDefaultCredentials = true;HttpWebResponse response = request.GetResponse() as HttpWebResponse;Stream stream = response.GetResponseStream();StreamReader reader = new StreamReader(stream, Encoding.Default);string html = reader.ReadToEnd();stream.Close();return html;}

请注意里面有一句UseDefaultCredentials,因为天猫整站都是https的,所以这一句还是挺有用的

 

下面是程序的业务逻辑代码:

            Console.ForegroundColor = ConsoleColor.Green;Console.WriteLine("本程序分三步完成采集工作(每完成一部需要重启程序):");Console.WriteLine("第1步:根据商户商品列表页面地址,采集商品编号");Console.WriteLine("第2步:根据商品编号,采集商品图片地址");Console.WriteLine("第3步:根据图片地址,下载图片");Console.WriteLine("请问您现在需要执行第几步操作:(请输入1、2或3然后按任意键开始)");var key = Console.ReadLine();if(key == "1"){Console.WriteLine("请先输入目标商户的商品列表页面地址:");baseListUrl = Console.ReadLine();getId();Console.WriteLine("第1步操作执行完毕,按任意键退出程序");}else if(key == "2"){Console.WriteLine("开始执行第2步操作:");prepareData();Console.WriteLine("第2步操作执行完毕,按任意键退出程序");}else if(key == "3"){Console.WriteLine("开始执行第3步操作:");downloadPic();Console.WriteLine("第3步操作执行完毕,按任意键退出程序");}Console.ReadKey();

 

其他的代码请到GITHUB上去看吧,喜欢的请帮忙点个推荐,或者给我一颗GITHUB的星星!多谢!

转载于:https://www.cnblogs.com/liulun/p/4863159.html

这篇关于【开源】天猫店整店商品图片采集工具:屠刀(包含题图、颜色图、内容图,适用于服装类,按货号保存商品图片)...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/473972

相关文章

vscode保存代码时自动eslint格式化图文教程

《vscode保存代码时自动eslint格式化图文教程》:本文主要介绍vscode保存代码时自动eslint格式化的相关资料,包括打开设置文件并复制特定内容,文中通过代码介绍的非常详细,需要的朋友... 目录1、点击设置2、选择远程--->点击右上角打开设置3、会弹出settings.json文件,将以下内

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端

C#实现添加/替换/提取或删除Excel中的图片

《C#实现添加/替换/提取或删除Excel中的图片》在Excel中插入与数据相关的图片,能将关键数据或信息以更直观的方式呈现出来,使文档更加美观,下面我们来看看如何在C#中实现添加/替换/提取或删除E... 在Excandroidel中插入与数据相关的图片,能将关键数据或信息以更直观的方式呈现出来,使文档更

java图像识别工具类(ImageRecognitionUtils)使用实例详解

《java图像识别工具类(ImageRecognitionUtils)使用实例详解》:本文主要介绍如何在Java中使用OpenCV进行图像识别,包括图像加载、预处理、分类、人脸检测和特征提取等步骤... 目录前言1. 图像识别的背景与作用2. 设计目标3. 项目依赖4. 设计与实现 ImageRecogni

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

C#中图片如何自适应pictureBox大小

《C#中图片如何自适应pictureBox大小》文章描述了如何在C#中实现图片自适应pictureBox大小,并展示修改前后的效果,修改步骤包括两步,作者分享了个人经验,希望对大家有所帮助... 目录C#图片自适应pictureBox大小编程修改步骤总结C#图片自适应pictureBox大小上图中“z轴

基于C#实现PDF文件合并工具

《基于C#实现PDF文件合并工具》这篇文章主要为大家详细介绍了如何基于C#实现一个简单的PDF文件合并工具,文中的示例代码简洁易懂,有需要的小伙伴可以跟随小编一起学习一下... 界面主要用于发票PDF文件的合并。经常出差要报销的很有用。代码using System;using System.Col

redis-cli命令行工具的使用小结

《redis-cli命令行工具的使用小结》redis-cli是Redis的命令行客户端,支持多种参数用于连接、操作和管理Redis数据库,本文给大家介绍redis-cli命令行工具的使用小结,感兴趣的... 目录基本连接参数基本连接方式连接远程服务器带密码连接操作与格式参数-r参数重复执行命令-i参数指定命

使用Python将长图片分割为若干张小图片

《使用Python将长图片分割为若干张小图片》这篇文章主要为大家详细介绍了如何使用Python将长图片分割为若干张小图片,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. python需求的任务2. Python代码的实现3. 代码修改的位置4. 运行结果1. Python需求

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情