国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

通過線程方式下載圖片

2019-11-11 02:02:01
字體:
來源:轉載
供稿:網友

通過線程下載網頁上面的圖片:

代碼下載的圖片有點勁爆,慎下載

class PRogram { static void Main(string[] args) { string[] str = { "model", "sexy", "belle", "stars" }; for (int url = 0; url < str.Length; url++) { Thread thread = new Thread(DownLoad); thread.Start(str[url]); } Console.Read(); } public static void DownLoad(object category) { string url = string.Empty; for (int purl = 14; purl > 10; purl--) { for (int pageSize = 0; pageSize < 20; pageSize++) { try { if (pageSize == 0) url = "http://www.mm8mm8.com/" + category + "/" + purl + ".html"; else url = "http://www.mm8mm8.com/" + category + "/" + purl + "_" + pageSize + ".html"; //創建http鏈接 var request = (HttpWebRequest)WebRequest.Create(url); request.Timeout = 1000 * 5; //5s過期 var response = (HttpWebResponse)request.GetResponse(); Stream stream = response.GetResponseStream(); StreamReader sr = new StreamReader(stream); string content = sr.ReadToEnd(); var list = GetHtmlImageUrlList(content); WebClient client = new WebClient(); string[] directory = { @"D:/MM/", @"X:/MM/", @"Y:/MM/"}; var directoryName = directory[new Random().Next(0, directory.Length)]; if (!Directory.Exists(directoryName)) Directory.CreateDirectory(directoryName); var fileName = string.Empty; if (list.Count == 0) { Console.WriteLine("時間:" + DateTime.Now + " 當前網址:" + url + " 未發現圖片"); break; } try { fileName = category + "_" + purl + "_" + (pageSize + 1) + ".jpg"; var localFile = directoryName + fileName; var imageRequest = (HttpWebRequest)WebRequest.Create(list[0]); imageRequest.Timeout = 1000 * 5; //5s 超時 var imageResponse = (HttpWebResponse)imageRequest.GetResponse(); var s = imageResponse.GetResponseStream(); Image image = Image.FromStream(s); image.Save(localFile); image.Dispose(); Console.WriteLine("時間:" + DateTime.Now + " 圖片:" + fileName + " 已經下載 存入磁盤位置:" + localFile); } catch (Exception e) { Console.WriteLine("時間:" + DateTime.Now + " 當前圖片:" + fileName + " 錯誤信息:" + e.Message); continue; } } catch (Exception ex) { Console.WriteLine("時間:" + DateTime.Now + " 當前網址:" + url + " 錯誤信息:" + ex.Message); } } } } /// <summary> /// 取得HTML中所有圖片的 URL。 /// </summary> /// <param name="sHtmlText">HTML代碼</param> /// <returns>圖片的URL列表</returns> public static List<string> GetHtmlImageUrlList(string sHtmlText) { // 定義正則表達式用來匹配 img 標簽 Regex regImg = new Regex(@"<img/b[^<>]*?/bsrc[/s/t/r/n]*=[/s/t/r/n]*[""']?[/s/t/r/n]*(?<imgUrl>[^/s/t/r/n""'<>]*)[^<>]*?/?[/s/t/r/n]*>", RegexOptions.IgnoreCase); // 搜索匹配的字符串 MatchCollection matches = regImg.Matches(sHtmlText); List<string> sUrlList = new List<string>(); // 取得匹配項列表 foreach (Match match in matches) sUrlList.Add(match.Groups["imgUrl"].Value); return sUrlList; } }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乃东县| 道孚县| 水城县| 红桥区| 大连市| 文昌市| 方城县| 共和县| 怀来县| 石泉县| 丰原市| 当雄县| 巴东县| 张家界市| 绍兴县| 泗水县| 汝南县| 柏乡县| 长沙县| 股票| 土默特右旗| 庆元县| 凤阳县| 普格县| 沅陵县| 云浮市| 阜康市| 新野县| 财经| 新绛县| 扎赉特旗| 浑源县| 临沧市| 阳新县| 肇州县| 云龙县| 青岛市| 德昌县| 绵竹市| 苏尼特左旗| 曲水县|