当前位置: 首页 > news >正文

做婚纱网站的图片大全微信运营商怎么联系

做婚纱网站的图片大全,微信运营商怎么联系,配件网站模板,我的网站域名网页自动登录和提交POST信息的核心就是分析网页的源代码#xff08;HTML#xff09;#xff0c;在C#中#xff0c;可以用来提取网页HTML的组件比较多#xff0c;常用的用WebBrowser、WebClient、HttpWebRequest这三个。 以下就分别用这三种方法来实现#xff1a;1、WebBr…网页自动登录和提交POST信息的核心就是分析网页的源代码HTML在C#中可以用来提取网页HTML的组件比较多常用的用WebBrowser、WebClient、HttpWebRequest这三个。 以下就分别用这三种方法来实现1、WebBrowser是个迷你浏览器其特点是Post时不用关心Cookie、内置JS等问题WebBrowser是VS2005新提供的组件其实就是封装了IE接口实现POST功能一般在webBrowser的DocumentCompleted中分析HtmlDocument 来实现代码如下            HtmlElement ClickBtn null;           if (e.Url.ToString().ToLower().IndexOf(http://sandou.cnblogs.com/) 0)   //登陆页面            {                HtmlDocument doc webBrowser1.Document;                for (int i 0; i doc.All.Count ; i)                {                    if (doc.All[i].TagName.ToUpper().Equals(INPUT))                    {                        switch (doc.All[i].Name)                        {                            case userCtl:                                doc.All[i].InnerText user01;                                break;                            case passCt1:                                doc.All[i].InnerText mypass;                                break;                            case B1:                                ClickBtn doc.All[i]; //提交按钮                                break;                        }                    }                }                ClickBtn.InvokeMember(Click);   //执行按扭操作            } 2、WebClient封装了HTTP的一些类操作简单相较于webBrowser特点是可以自设代理缺点是对COOKIE的控制WebClient的运行全在后台并且提供了异步操作的能力这样很方便并发多个任务然后等待结果的返回再逐个处理。多任务异步调用的代码如下  private void StartLoop(int ProxyNum)        {           WebClient []  wcArray new WebClient[ProxyNum];  //初始化             for (int idArray 0; idArray ProxyNum;idArray)            {                 wcArray[idArray] new WebClient();                wcArray[idArray].OpenReadCompleted new OpenReadCompletedEventHandler(Pic_OpenReadCompleted2);                wcArray[idArray].UploadDataCompleted new UploadDataCompletedEventHandler(Pic_UploadDataCompleted2);                try                {                                        wcArray[idArray].Proxy new WebProxy(proxy[1], port);                    wcArray[idArray].OpenReadAsync(new Uri(http://sandou.cnblogs.com/)); //打开WEB;                    proxy null;                }                catch                {                }            }        }         private void Pic_OpenReadCompleted2(object sender, OpenReadCompletedEventArgs e)        {                if (e.Error null)                {                            string textData new StreamReader(e.Result, Encoding.Default).ReadToEnd();  //取返回信息                             ..                              String cookie ((WebClient)sender).ResponseHeaders[Set-Cookie];                             ((WebClient)sender).Headers.Add(Content-Type, application/x-www-form-urlencoded);                            ((WebClient)sender).Headers.Add(Accept-Language, zh-cn);                            ((WebClient)sender).Headers.Add(Cookie, cookie);                             string postData                             byte[] byteArray Encoding.UTF8.GetBytes(postData); // 转化成二进制数组                            ((WebClient)sender).UploadDataAsync(new Uri(http://sandou.cnblogs.com/), POST, byteArray);                }         }         private void Pic_UploadDataCompleted2(object sender, UploadDataCompletedEventArgs e)        {                 if (e.Error null)                {                    string returnMessage Encoding.Default.GetString(e.Result);                                    }       }   3、HttpWebRequest较为低层能实现的功能较多Cookie操作也很简单:         private bool  PostWebRequest()                {                   CookieContainer cc new CookieContainer();                    string pos tData user strUser pass strPsd;                    byte[] byteArray Encoding.UTF8.GetBytes(postData); // 转化                     HttpWebRequest webRequest2 (HttpWebRequest)WebRequest.Create(new Uri(http://sandou.cnblogs.com/));                    webRequest2.CookieContainer cc;                    webRequest2.Method POST;                    webRequest2.ContentType application/x-www-form-urlencoded;                    webRequest2.ContentLength byteArray.Length;                    Stream newStream webRequest2.GetRequestStream();                    // Send the data.                    newStream.Write(byteArray, 0, byteArray.Length);    //写入参数                    newStream.Close();                     HttpWebResponse response2 (HttpWebResponse)webRequest2.GetResponse();                    StreamReader sr2new StreamReader(response2.GetResponseStream(), Encoding.Default);                    string text2   sr2.ReadToEnd();                          }     HttpWebRequest 实现 这个是从网上COPY 的我以前用相关的代码登录到WWW.ASP.NET上并且成功post可惜代码不知道放什么地方了。 HttpWebRequest自动登录网站并获取网站内容不包含验证码的网站 可以使用 Visual Sniffer百度搜索 来捕捉提交的数据信息1. 访问你需要站外提交的页面比如 CSDN 登陆页 http://www.csdn.net/member/UserLogin.aspx2. 填写好需要的资料比如用户名和密码3. 打开 Visual Sniffer, 点“开始拦截”4. 在访问的页面中提交。5. 等提交成功之后在 Visual Sniffer 中“停止拦截”6. 在 Visual Sniffer 的左侧栏的加号中依次点开右边是它拦截到的内容  POST http://www.csdn.net/member/UserLogin.aspx HTTP/1.0Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*Referer: http://www.csdn.net/member/UserLogin.aspxAccept-Language: zh-cnContent-Type: application/x-www-form-urlencodedUA-CPU: x86Pragma: no-cacheUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; InfoPath.1)Host: www.csdn.netContent-Length: 355Proxy-Connection: Keep-AliveCookie: ASPSESSIONIDAAAATBQCFMEGGCKDBKHAMMCGKPFDMBFG; ASP.NET_SessionIdlusprmnom05lr445tmteaf55; userid699879 __EVENTTARGET__EVENTARGUMENT__VIEWSTATEdDwtMTcwMzgxNjQ2Mjs7bDxDU0ROVXNlckxvZ2luOmNiX1NhdmVTdGF0ZTtDU0ROVXNlckxvZ2luOkltYWdlX0xvZ2luOz4%2Btu1q2wmRZoAJTi9L73w1zBleylY%3DCSDNUserLogin%3Atb_UserNametestusernameCSDNUserLogin%3Atb_PasswordtestpasswordCSDNUserLogin%3Atb_ExPwd9232fromCSDNUserLogin%3AImage_Login.x36CSDNUserLogin%3AImage_Login.y6GET http://www.csdn.net/mycustompage.htm?aspxerrorpath/member/UserLogin.aspx HTTP/1.0Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*Referer: http://www.csdn.net/member/UserLogin.aspxAccept-Language: zh-cnUA-CPU: x86Pragma: no-cacheUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; InfoPath.1)Host: www.csdn.netProxy-Connection: Keep-AliveCookie: ASPSESSIONIDAAAATBQCFMEGGCKDBKHAMMCGKPFDMBFG; ASP.NET_SessionIdlusprmnom05lr445tmteaf55; userid699879以上为拦截内容其中提交数据的参数部分程序中的strArgs如__EVENTTARGET__EVENTARGUMENT__VIEWSTATEdDwtMTcwMzgxNjQ2Mjs7bDxDU0ROVXNlckxvZ2luOmNiX1NhdmVTdGF0ZTtDU0ROVXNlckxvZ2luOkltYWdlX0xvZ2luOz4%2Btu1q2wmRZoAJTi9L73w1zBleylY%3DCSDNUserLogin%3Atb_UserNametestusernameCSDNUserLogin%3Atb_PasswordtestpasswordCSDNUserLogin%3Atb_ExPwd9232          protected static string cookieHeader;        private void Page_Load(object sender, System.EventArgs e)        {            string strReContent string.Empty;            //登录            strReContent PostLogin(http://www.mystand.com.cn/login/submit.jsp提交的页面,提交的参数useridhgj0000password06045369,引用地址http://www.mystand.com.cn/);            //asp.net登录传递的参数需注意                //strReContent PostLogin(http://www.mystand.com.cn/login.aspx,__VIEWSTATEdDwtNjkzMjUyNDczO3Q8O2w8aTwzPjs%2BO2w8dDxwPHA8bDxUZXh0Oz47bDxcZTs%2BPjs%2BOzs%2BOz4%2BOz6aX2dtqkJTK%2BKbNPsjd7Op%2Fl26Iw%3D%3DtxtUserNamehxftxtPasswordhxf0000btnEnter%E7%99%BB%E5%BD%95,http://www.mystand.com.cn/login.aspx);            //获取页面            strReContent GetPage(http://www.mystand.com.cn/company/getdata.jsp?code,引用地址http://www.mystand.com.cn/);            //strReContent GetPage(http://www.mystand.com.cn/Modules/index.aspx,http://www.mystand.com.cn/login.aspx);            //可以对获得的内容进行处理strReContent        }         /** summary        /// 功能描述模拟登录页面提交登录数据进行登录并记录Header中的cookie        /// /summary        /// param namestrURL登录数据提交的页面地址/param        /// param namestrArgs用户登录数据/param        /// param namestrReferer引用地址/param        /// returns可以返回页面内容或不返回/returns        public static string PostLogin(string strURL,string strArgs,string strReferer)        {            string strResult ;            HttpWebRequest myHttpWebRequest (HttpWebRequest)WebRequest.Create(strURL);            myHttpWebRequest.AllowAutoRedirect true;             myHttpWebRequest.KeepAlive true;            myHttpWebRequest.Accept image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/msword, application/x-shockwave-flash, */*;            myHttpWebRequest.Referer strReferer;                        myHttpWebRequest.UserAgent Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon; .NET CLR 2.0.50727);            myHttpWebRequest.ContentType application/x-www-form-urlencoded;            myHttpWebRequest.Method POST;             CookieCollection myCookies null;            CookieContainer myCookieContainer new CookieContainer();            myHttpWebRequest.CookieContainer myCookieContainer;             Stream MyRequestStrearm myHttpWebRequest.GetRequestStream();            StreamWriter MyStreamWriter new StreamWriter(MyRequestStrearm,Encoding.ASCII);            //把数据写入HttpWebRequest的Request流            MyStreamWriter.Write(strArgs);            //关闭打开对象             MyStreamWriter.Close();            MyRequestStrearm.Close();             HttpWebResponse response null;            System.IO.StreamReader sr null;            response (HttpWebResponse)myHttpWebRequest.GetResponse();             cookieHeader myHttpWebRequest.CookieContainer.GetCookieHeader(new Uri(strURL));             HttpContext.Current.Application.Lock();             HttpContext.Current.Application[cookieHeader] cookieHeader;             HttpContext.Current.Application.UnLock();            myCookies response.Cookies;             sr new System.IO.StreamReader(response.GetResponseStream(),Encoding.GetEncoding(gb2312));    //    //utf-8            strResult sr.ReadToEnd();            return strResult;        }         /** summary        /// 功能描述在PostLogin成功登录后记录下Headers中的cookie然后获取此网站上其他页面的内容        /// /summary        /// param namestrURL获取网站的某页面的地址/param        /// param namestrReferer引用的地址/param        /// returns返回页面内容/returns        public static string GetPage(string strURL,string strReferer)        {            string strResult ;            HttpWebRequest myHttpWebRequest (HttpWebRequest)WebRequest.Create(strURL);            myHttpWebRequest.ContentType text/html;            myHttpWebRequest.Method GET;            myHttpWebRequest.Referer strReferer;            myHttpWebRequest.Headers.Add(cookie: cookieHeader);             HttpWebResponse response null;            System.IO.StreamReader sr null;            response (HttpWebResponse)myHttpWebRequest.GetResponse();            sr new System.IO.StreamReader(response.GetResponseStream(), Encoding.GetEncoding(gb2312));    //    //utf-8            strResult sr.ReadToEnd();            return strResult;        } 技术应用——网页自动登录提交Post内容的用途很多如验证身份、程序升级、网络投票等以下是用C#实现的方法. 未解决问题——目前最大问题无法绕过验证码——我曾经和同事讨论图片的算法基本上很难识别网上也有很多识别验证码的例子但是对于简单的噪声还是可以的可是对于复杂的就一点用都没有了到目前为止我没有测试成功过如果你有测试成功过请帖代码我们一起研究研究。转载于:https://www.cnblogs.com/gxy217/archive/2012/06/07/2539121.html
http://www.huolong8.cn/news/343283/

相关文章:

  • 程序员自己建站赚钱百度新闻首页新闻全文
  • 微网站定制wordpress春节
  • 做网站每个月可以赚多少钱菏泽科技网站建设
  • 网站流量怎么做做企业内刊有哪些网站推荐
  • 禹城做网站的做机械的专业外贸网站有哪些
  • 蓝色大气网站模板低价网站制作
  • 赤峰网站策划科技类公司名称大全
  • 建设一个网站可以放视频的多少钱企业网站怎么做产品图片轮播
  • 如何用ps做网站网站查外链
  • 太原广告公司网站建设甘肃网站域名申请公司
  • 化妆品网站开发可行性wordpress 插件编写
  • 网站前期运营策略郑州公司网站建设服务
  • 龙岗网络营销网站制作哪里好上海公关公司
  • wordpress中上传整站开发公司先进会员企业报告材料
  • 科学城做网站公司地铁建设优缺点
  • c做网站教程网络平台推广引流
  • 杭州建设公司网站黄页推广是什么意思
  • 网站开发里程碑电商网站销售数据分析
  • 手机怎么样做网站赤壁市药监局网站建设方案
  • 建设银行校招网站入口网贷之家网站建设
  • 高清免费爱做网站咋么做网站在电脑上
  • 制作一个网站一般先要明确惠喵WordPress
  • 北京建站工具金融网站建设方案
  • 网站,商城,app+建设关于建设学校网站的报告书
  • 网站开发培训要多少钱为什么北京一夜封了
  • 鞍山市信息网站wordpress 云储存插件
  • 烟台网站制作人才招聘做软件常用的网站
  • 商务网站专题页昆明网站建设方案策划
  • 北京建网站实力公司网站多少图片怎么做超链接
  • 可以做热图的工具网站网站建设方案 前台 后台