通过WebClient类来发起请求并下载html 抓取邮箱 图片

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Text.RegularExpressions;
using System.IO;

namespace 通过WebClient类来发起请求并下载html 抓取邮箱 图片
{
    class Program
    {
        static void Main(string[] args)
        {

            #region 抓取网页email
            //string url = "http://192.168.1.100:8080/提取Email.htm";
            ////1.根据网址下载对应html字符串
            //WebClient wc = new WebClient();
            //wc.Encoding = Encoding.UTF8;
            //string html = wc.DownloadString("http://192.168.1.100:8080/提取Email.htm");
            ////2.从下载到字符串中提取Email,并把提取到的Email写入到文本文件中
            //MatchCollection matches = Regex.Matches(html, @"[-a-zA-Z0-9_.][email protected][-a-zA-Z0-9]+(\.[a-zA-Z0-9]+){1,}");

            //using (StreamWriter writer = new StreamWriter("email.txt"))
            //{
            //    //遍历提取到的email
            //    foreach (Match item in matches)
            //    {
            //        //Console.WriteLine(item.Value);
            //        writer.WriteLine(item.Value);
            //    }
            //}

            //Console.ReadKey();
            #endregion

            #region 抓取网页图片
            //WebClient wc = new WebClient();

            ////1.下载网页源代码
            //string html = wc.DownloadString("http://192.168.1.100:8080/美女图片/美女们.htm");
            ////2.提取网页中的图片,其实就是<img>标签
            ////<img  src="hotgirls/00_00.jpg" />
            //MatchCollection matches = Regex.Matches(html, @"<img\s+"" src=""(.+)""\s*/>");
            //foreach (Match item in matches)
            //{
            //    string imgPath = "http://192.168.1.100:8080/美女图片/" + item.Groups[1].Value;
            //    //下载图片
            //    wc.DownloadFile(imgPath, @"c:\mv\" + Path.GetFileName(imgPath));
            //}
            //Console.WriteLine("ok");
            //Console.ReadKey();

            #endregion

            #region 抓取职位信息
            WebClient webClient = new WebClient();
            string html = webClient.DownloadString("http://192.168.1.100:8080/【上海,IT-管理,计算机软件招聘,求职】-前程无忧.htm");

            //<a href="http://search.51job.com/job/46621778,c.html" onclick="zzSearch.acStatRecJob( 1 );" class="jobname" target="_blank">ERP项目经理</a>
            MatchCollection matches = Regex.Matches(html, @"<a\s+href=""http://search.51job.com/job/[0-9]{8},c.html"".+>(.+)</a>");
            foreach (Match item in matches)
            {
                Console.WriteLine(item.Groups[1].Value);
            }
            Console.WriteLine("共{0}个职位信息。", matches.Count);
            Console.ReadKey();

            #endregion

        }
    }
}
时间: 2024-10-06 03:12:09

通过WebClient类来发起请求并下载html 抓取邮箱 图片的相关文章

ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片

ASP.NET下载远程图片保存到本地的方法.保存抓取远程图片 2012-05-16 11:25:51     我来说两句      收藏    我要投稿 以下介绍两种方法:1.利用WebRequest,WebResponse 类WebRequest wreq=WebRequest.Create("http://up.2cto.com/2012/0516/20120516112717995.gif");    HttpWebResponse wresp=(HttpWebResponse)

使用C#WebClient类访问(上传/下载/删除/列出文件目录)由IIS搭建的http文件服务器

前言 为什么要写这边博文呢?其实,就是使用C#WebClient类访问由IIS搭建的http文件服务器的问题花了我足足两天的时间,因此,有必要写下自己所学到的,同时,也能让广大的博友学习学习一下. 本文足如有不足之处,请在下方留言提出,我会进行改正的,谢谢! 搭建IIS文件服务器 本博文使用的操作系统为Windows 10 企业版,其他Windows系统类似,请借鉴: 一.当然,开始肯定没有IIS,那该怎么办?需要一个软件环境进行搭建,具体方法如下: 1)打开“控制面板”,找到“程序与功能”,如

使用C#WebClient类访问(上传/下载/删除/列出文件目录)

在使用WebClient类之前,必须先引用System.Net命名空间,文件下载.上传与删除的都是使用异步编程,也可以使用同步编程, 这里以异步编程为例: 1)文件下载: static void Main(string[] args) { //定义_webClient对象 WebClient _webClient = new WebClient(); //使用默认的凭据--读取的时候,只需默认凭据就可以 _webClient.Credentials = CredentialCache.Defau

使用Puppeteer进行数据抓取(四)——图片下载

大多数情况下,图片获取并不是很困难的事情,获取图片的url,然后模拟浏览器请求即可.但是,有的时候这种方法往往无法生效,常见的情形有: 动态图片,每次获取都是一个新的,例如图片验证码,重新获取时是一个新的验证码图片,已经失去了效果了. 动态上下文,有的网站为了反爬虫,获取图片时要加上其动态生成的cookie才行. 这些情况下,使用puppeteer驱动chrome浏览器能看到图片,但获取url后单独请求时,要么获取到的图片无效,要么获取不到图片.本文这里就简单的介绍下一些十分通用且有效的下载这些

用PHP的curl实现并发请求远程文件(抓取远程网页)

PHP的curl功能确实强大了.里面有个curl_multi_init功能,就是批量处理任务.可以利用此,实现多进程同步抓取多条记录,优化普通的网页抓取程序. 一个简单的抓取函数: function http_get_multi($urls){ $count = count($urls); $data = []; $chs = []; // 创建批处理cURL句柄 $mh = curl_multi_init(); // 创建cURL资源 for($i = 0; $i < $count; $i +

抓取服务器图片下载到本地

Sample code: import org.apache.http.Header; import org.apache.http.HttpResponse; import org.apache.http.HttpStatus; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.methods

php将抓取的图片链接下载到本地

备注: fclose这一步操作完成之后如果返回值是空表示下载成功,否则会返回1或者其他错误提示 这个步骤测试的时候实在yii2框架的基础上执行的,下载到的图片实在frontend目录下的web目录下(这是默认)!

fiddler抓取HTTPS请求

Https即 Http over ssl,使用ssl加密传输数据,Http是明文传输数据的,所以Https必然比Http更安全.即使传输数据被劫持,劫持者也无法获取传输明文.从而保证了系统的安全性,尤其对于交易支付类业务来说,https的安全性尤为重要. 作为测试免不了会使用工具抓取请求,但是fiddler默认置灰抓取http请求,那么如何抓取HTTPS请求呢,下面根据自己的使用总结一下如何使用fiddler抓取HTTPS请求: 前置:fiddler可以抓取http请求 一.fiddler如何抓

下载远程(第三方服务器)文件、图片,保存到本地(服务器)的方法、保存抓取远程文件、图片

将一台服务器的文件.图片,保存(下载)到另外一台服务器进行保存的方法: 1 #region 图片下载 2 3 #region 图片下载[使用流.WebRequest进行保存] 4 /// <summary> 5 /// 图片下载[使用流.WebRequest进行保存] 6 /// </summary> 7 /// <param name="fileUrl">图片URL地址(例如:http://img.baidu.com/video/img/video