廢話少說,先上程序運行時的圖片


開源地址:
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的星星!多謝!
