比如学生成绩录入界面,登录录入网页后,会出现成绩录入的文本框。一般是一个学号,后面跟一个文本框录成绩。
如果成绩已经在Excel中了,再一个一个手工输入就太麻烦了,但我们又没有修改服务器程序的权限,当然也不能直接访问数据库。
能不能做个东东,直接分析页面,然后自动从Excel中读出填写页面,请高手给个思路吧,主要是什么技术能填写浏览器中显示的页面。
估计那个网页没有Session之类的,因为那个页面开一天都可以提交,没有过期。
如果成绩已经在Excel中了,再一个一个手工输入就太麻烦了,但我们又没有修改服务器程序的权限,当然也不能直接访问数据库。
能不能做个东东,直接分析页面,然后自动从Excel中读出填写页面,请高手给个思路吧,主要是什么技术能填写浏览器中显示的页面。
估计那个网页没有Session之类的,因为那个页面开一天都可以提交,没有过期。
解决方案 »
- 用asp.net 从sql server 2008读出的数据转换成json格式? 新手没接触过 求高手帮助
- 大大帮我看下这个存储过程的条件的问题出在哪?
- FileOperate类的用法
- 如何把EXCEL中的数据向数据库中导入?
- repeater 中绑定数据
- vb.net c#.net选哪个好
- (超難問題)100分求!不夠加分!頂者有分。
- asp.net 2.0 session状态服务问题
- 服务器生成EXECL并导出到客户端时如何显示等待信息
- ASP和ASP.net的服务器配置有何不同?只需要IIS5.0就可使用ASP.net吗?
- 有没有朋友可以实现在查询语句中实现当查出的某个字段数据是null时自动转化为0
- 返回的值为空?
(1)建立一个C/S程序;
(2)创建一个HttpWebRequest对象,创建时输入了URL信息;
(3)设置Method为"Put";
(4)创建一个StreamWriter对象,绑定到HttpWebRequest对象调用GetRequestStream()得到的流对象,并把填好的信息写入;
(5)自己构造要提交的信息,用StreamWriter写入;
(6)调用GetResponse()提交。这里有几个问题:
(1)这样做是否需要有权限才行;
(2)StreamWriter写入的提交信息是否也是html的格式?
没有修改服务器程序的权限,也不能直接访问数据库,网页没有Session之类的我感觉这样做个winform程度似乎更方便些,先对excel进行处理,这个在本地用winform对excel处理就比较容易了,把需要的数据存个数组之类的,然后拖个webbrowser控件,加载那个网页,对页面中的文本框赋值即可----------------------------------------------------------------------------------这倒是个好办法,不知道获取网页上文本框的引用及修改其某个属性的方法是什么,望告知。
到页面上去.
(2)StreamWriter写入的提交信息是否也是html的格式?
========>如果不用登录就很简单,没有权限的问题2.格式就是 aa=1&bb=2&cc=3...aa,bb,cc就是那个页面中form中input或select的name.值就是excel中的值.
(1)是不是有n个这样的参数也没有问题,比如200个。
(2)这种方式是不是和浏览器中直接输入的效果相同,比如我只生成字符串“a.asp?a=1&b=2...”,然后拷贝到浏览器地址栏,回车。(哦,写到这里想起来了,这样应该是Get吧,参数多了就不行了)
就是相当于你在页面中输入内容,然后提交.
{
sMethod = sMethod.ToUpper();
sMethod = sMethod!="POST"?"GET":sMethod;
string res ="";
HttpWebRequest re =(HttpWebRequest)HttpWebRequest.Create(url);
re.CookieContainer = cook; // attach the cook object
re.Method = sMethod;
re.AllowAutoRedirect = bAutoRedirect;
re.UserAgent="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; MyIE2; .NET CLR 1.1.4322)";
re.Referer = url;
if (sMethod =="POST") // Post data to Server
{
re.ContentType="application/x-www-form-urlencoded";
Byte[] b = this.getByteFromString(Param,ecode);
re.ContentLength = b.Length;
try
{
Stream oSRe = re.GetRequestStream();
oSRe.Write(b,0,b.Length);
oSRe.Close();
oSRe = null;
}
catch(Exception )
{
re = null;
return "-1";
}
}HttpWebResponse rep = null;
Stream oResponseStream = null;
StreamReader oSReader = null;
try
{
rep=(HttpWebResponse)re.GetResponse();oResponseStream = rep.GetResponseStream();
oSReader = new StreamReader(oResponseStream,ecode);
res =oSReader.ReadToEnd();
}
catch (System.Net.WebException e)
{
//res ="-1";res = e.ToString();
}if (rep!=null)
{
rep.Close();
rep = null;
}
if(oResponseStream!= null)
{
oResponseStream.Close();
oResponseStream = null;
}if(oSReader!=null)
{
oSReader.Close();
oSReader = null;
}
re = null;return res;}
当然这个1.2.3的内容,要用UrlEncode编码
http://ziliaonet.com/tech/softdev/CJ/200607/90409.html