RegexOptions.IgnoreCase | RegexOptions.Singleline); foreach

时间:2022-03-02 07:16:03

c#实现抓取高清美女妹纸图片


代码如下:


private void DoFetch(int pageNum)

{

ThreadPool.QueueUserWorkItem(_ =>

{

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(”

美女摄影?page=” + pageNum);

request.Credentials = System.Net.CredentialCache.DefaultCredentials;

HttpWebResponse response = (HttpWebResponse)request.GetResponse();

if (response.StatusCode == HttpStatusCode.OK)

{

using (StreamReader sr = new StreamReader(response.GetResponseStream()))

{

List<Uri> links = FetchLinksFromSource(sr.ReadToEnd());

Console.WriteLine(“=========================” + pageNum + “fatch END==========================”);

}

}

});

}

private List<Uri> FetchLinksFromSource(string htmlSource)

{

List<Uri> links = new List<Uri>();

string regexImgSrc = @”<img[^>]*?src\s*=\s*[“”‘]?([^‘”” >]+?)[ ‘””][^>]*?>”;

MatchCollection matchesImgSrc = Regex.Matches(htmlSource, regexImgSrc, RegexOptions.IgnoreCase | RegexOptions.Singleline);

foreach (Match m in matchesImgSrc)

{

string href = m.Groups[1].Value;

if (CheckIsUrlFormat(href))

{

links.Add(new Uri(href));

Console.WriteLine(href);

}

else

continue;

using (WebClient myWebClient = new WebClient())

{

try

{

myWebClient.DownloadFile(new Uri(href), System.IO.Path.Combine(globePath, System.IO.Path.GetRandomFileName() + System.IO.Path.GetExtension(href)));

}

catch (Exception ex)

{

Console.WriteLine(ex.Message);

}

}

}

return links;

}

以上就是本文的全部内容了,,大家可以*扩展哦,你分明,但愿大家能够喜欢。