c#模拟网页自动登录的一段代码,遇到了问题

问题描述

usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.IO;usingSystem.Net;namespaceMyLogin{classPostGetWebRequest{publicstringLoginUrl;//privateCookieContainerMyCookieContainer;privateHttpWebRequestrequest;privateHttpWebResponseresponse;privateStreamstream;privateStreamReaderstreamReader;privatestringSrc="";privatestringpostData;publicstringHtmlUserName;publicstringHtmlPassword;//privatestringHtmlSubmit;publicstringPostWebRequest(){request=(HttpWebRequest)WebRequest.Create(LoginUrl);MyCookieContainer=newCookieContainer();//设置提交相关参数postData="email="+HtmlUserName.Replace("@","%40")+"&password="+HtmlPassword+"&origURL="+LocationUrl+"&domain=renren.com";ASCIIEncodingencoding=newASCIIEncoding();byte[]data=encoding.GetBytes(postData);request.Method="POST";request.ContentType="application/x-www-form-urlencoded";request.ContentLength=data.Length;request.KeepAlive=false;request.CookieContainer=MyCookieContainer;//把取服务器发给客户端跟session想对应的cookie;相当于是一个容器//提交请求stream=request.GetRequestStream();stream.Write(data,0,data.Length);stream.Close();//接收response=(HttpWebResponse)request.GetResponse();streamReader=newStreamReader(response.GetResponseStream(),Encoding.UTF8);Src=streamReader.ReadToEnd();streamReader.Close();stream.Close();returnSrc;}}classProgram{staticvoidMain(string[]args){PostGetWebRequestpostGetWebRequest=newPostGetWebRequest();//没有验证码的网站,登录页面html格式,客户端的postGetWebRequest.HtmlUserName="xxx@163.com";postGetWebRequest.HtmlPassword="aaaaaa";postGetWebRequest.LoginUrl="http://www.renren.com/PLogin.do";//这个是人人的登录页stringcontent1=postGetWebRequest.PostWebRequest();Console.WriteLine(content1);Console.ReadKey();}}}问题是我想获得post后响应的正文比如{"code":true,"homeUrl":"http://www.renren.com/callback.do?t=35466507bb49807292e00bbe5063b9090&origURL=http%3A%2F%2Fwww.renren.com%2Fhome&needNotify=false"}我该怎么修改代码??

解决方案

解决方案二:
什么意思,content1不是返回的内容吗,如果想post其他地址,就修改url那个网站需要提交的参数,每个页面的参数可能不一样,你先抓包看看都提交了哪些,自己对着组织
解决方案三:
我运行后返回了一段登录前页面的源代码,但我无法判断是否登录成功啊,如果我能得到post的响应正文就可以,问题是怎么获得?
解决方案四:
{"code":true,"homeUrl":"http://www.renren.com/callback.do?t=35466507bb49807292e00bbe5063b9090&origURL=http%3A%2F%2Fwww.renren.com%2Fhome&needNotify=false"}这是登录成功的{"catchaCount":1,"code":false,"homeUrl":"http://www.renren.com/SysHome.do?origURL=http%3A%2F%2Fwww.renren.com%2Fhome&catchaCount=1&failCode=128","failDescription":"您的用户名和密码不匹配","failCode":128,"email":"18986143802"}这是登录失败的我该怎么获取这段代码?

时间: 2024-09-09 22:57:18

c#模拟网页自动登录的一段代码,遇到了问题的相关文章

C# 网络编程之网页自动登录 (一).使用WebBrower控件模仿登录

      最近学习C#网络编程中,想实现网页自动登录并提交GET/POST信息,再实现循环登录不断发送报文给服务器,服务器发送消息给客户端记录能登录的账户和密码,做到后面实现绕过验证码.动态抓取登录位置等,但由于资料很少.进度缓慢,下面这篇文章仅供大家交流阅读.      也许你可能看过一篇文章关于C#实现POST提交方式中三种提取网页HTML的方法:WebBrowser.WebClient.HttpWebRequest.我也看了很多人的博客,尤其是关于WebBrowser和HttpWebRe

javascript-怎么做网页自动登录?java+jsp,在js中做这个功能

问题描述 怎么做网页自动登录?java+jsp,在js中做这个功能 怎么做网页自动登录?java+jsp,在js中做这个功能,就是有个checkbox(30天内自动登录),选中之后,登录成功后30天内自动登录 解决方案 用Cookie,把用户和密码保存到本地 解决方案二: 勾选好checkbox 将用户名和密码保存到cookie中返回到客户端,下一次进入到登录界面时候获取该cookie从中取出用户名和密码,进行登录. 解决方案三: 就是保存到cookie 中,,下次登录直接送cookie中读取

JavaWeb使用Cookie模拟实现自动登录功能(不需用户名和密码)_java

其中包含两个jsp文件,分别为login.jsp和index.jsp 代码如下: login.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "

网页设计与开发-网页设计,有一段代码太冗长了,求帮忙优化下!!!感激不尽!!!

问题描述 网页设计,有一段代码太冗长了,求帮忙优化下!!!感激不尽!!! 在最底下的那一段script代码太冗长了,求帮忙优化下,感激不尽!!! 以下是己完成的代码: <!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <style> .explain_box{ float:lef

帮忙看看PHP登录的一段代码

问题描述 帮忙看看PHP登录的一段代码 普通用户能登录,管理员就不行,也不报错,直接跳转的是空白页面,这段代码逻辑有错吗,求指教,实在找不到哪儿错了 <?php session_start(); require("connection/conn.php"); $sql="select * from house_user where username='$username' and password='$password'"; $res=mysql_query(

如何看到网站网页自动登录的密码

  适用范围 谷歌浏览器 火狐浏览器 各种网页已保存密码的显示方法(只适用以上两种浏览器) 注:其他浏览器目前来说,还没有此类的功能,也许是作者很少用其他浏览器的原因吧,如果有的话,欢迎大家补充. 谷歌浏览器查看自动登录路由器密码方法 第1步:正常打开谷歌浏览器,并单击谷歌浏览器右侧的菜单按扭下的设置. 第2步:在打开的谷歌浏览器的设置窗口中向下拉到底部,找到"显示高级设置..."并单击. 第3步:找到"密码和表单"此项,下面的"管理已保存的密码"

网站网页自动登录的密码如何看到

  第1步:正常打开谷歌浏览器,并单击谷歌浏览器右侧的菜单按扭下的设置. 尊重原创转载留网址http://www.pc811.com/1/26058.html 第2步:在打开的谷歌浏览器的设置窗口中向下拉到底部,找到"显示高级设置..."并单击. 第3步:找到"密码和表单"此项,下面的"管理已保存的密码"并单击. 第4步:在打开的"已保存的密码"窗口中,找到自己曾经设置过的网址并单击选中,然后就可以直接在后台单击"显

VBS 自动登录论坛的实现代码

这篇文章主要介绍了如果通过vbs实现论坛自动登录的实现方法,其实主要利用了vbs操作网页表单的自动填写实现,喜欢的朋友可以试试   复制代码 代码如下: on error resume next url = " http://www.bathome.net/logging.php?action=login" username = "***" password = "***" set ie = CreateObject("Internet

怎么查看win7系统浏览器中网页自动登录保存的密码

  1.如果你使用的是谷歌浏览器的话,首先打开它,然后点击浏览器上方右上角的按钮,选择"设置"项; 2.在打开的谷歌浏览器的设置窗口中拉到底部,找到并点击"显示高级设置..."项; 3.接着找到"密码和表单"此项,然后点击"管理已保存的密码"项; 4.在打开的已保存的密码界面中,找到自己设置过的网址并选中,然后点击后面的"显示"按钮,即可看到密码了哦. 5.如果使用的是火狐浏览器的话,就打开浏览器,点击菜单