小弟刚刚开始工作,C#学了不到一星期,就要做一个抓取网页的程序。
大家知道,如果给定一个url,得到其网页源码是很简单的,我现在遇到的问题是,要利用网站自带的搜索引擎,而不是给定的url,因为我要得到他们数据库里的一些有效信息,那对我们才是有价值的。比喻说,用51job自带的引擎,输入查询字段,可以得到很多工作信息,我们要的就是这样的东西。但是我不可能打开ie搜了以后在提取呀。
据我的研究,得向网页Post一个信息才行,我试了一下,可是没成功,呵呵,我刚刚学这些东西,对我来说太难了一点,各位达人高手,帮忙呀,小弟先谢了。知道得大哥最好把代码贴出来,便于小弟学习。
大家知道,如果给定一个url,得到其网页源码是很简单的,我现在遇到的问题是,要利用网站自带的搜索引擎,而不是给定的url,因为我要得到他们数据库里的一些有效信息,那对我们才是有价值的。比喻说,用51job自带的引擎,输入查询字段,可以得到很多工作信息,我们要的就是这样的东西。但是我不可能打开ie搜了以后在提取呀。
据我的研究,得向网页Post一个信息才行,我试了一下,可是没成功,呵呵,我刚刚学这些东西,对我来说太难了一点,各位达人高手,帮忙呀,小弟先谢了。知道得大哥最好把代码贴出来,便于小弟学习。
解决方案 »
- 腾讯邮箱的添加附件是如何实现的?
- 关于gridview的行链接与CommandField删除的冲突问题,请教高手解决
- 关于.net 发送邮件问题!
- 请问怎样取得一张表的所有字段名?谢谢
- 数据库为sql server中表字段类型为text,为何不能存放多一点的html代码?
- 在线100分求使用SqlDataReader得到当前记录的和当前上一条和下一条记录(C#)
- vs2003建立一个asp.net项目?
- 急!在线等!!!各位高手!版主!!!!!!请帮忙看一下为什么我这段代码总是更新不了哪???
- 真的搞不懂了!请高手帮忙看看哪错了?(webgrid保存问题)
- 散分!!如何在服务器建立一个守护线程??
- 在web.config中如何启用Session?
- ==============关于自定义TypeConverter,如何实现MethodInfo和String的转换?===============
System.Net.HttpWebRequest req;
System.Net.HttpWebResponse res;
//url,需要请求的URL
string url=struri.ToString();
//提交请求
WebRequest webreq=WebRequest.Create(url);
//转换类型
req=(HttpWebRequest)webreq;
//返回对请求的响应
WebResponse webres=req.GetResponse();
//转换类型
res=(HttpWebResponse)webres;
//得到返回数据流
Stream mystream=res.GetResponseStream();
StreamReader mystreameread=new StreamReader(mystream,Encoding.Default);
//转换流为字符串
string strtemp=mystreameread.ReadToEnd();不知道楼主要的是不是这个东西?
using System.Web;
using System.Net;
using System.IO;
using System.Text;
namespace SendMessage
{public bool SendMsg(MsgInfo msg)
{
//create request
try
{
WebRequest req = WebRequest.Create("http://your_post_url");//set the request parameter
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";//querystring '?msg=xxx&type=0'
string strQuery = "msg=";
strQuery += HttpUtility.UrlEncode(msg);
strQuery += "&type=0";string dataSend = strQuery;
req.ContentLength = dataSend.Length;byte [] buff = Encoding.UTF8.GetBytes(dataSend);
Stream reqStream = req.GetRequestStream();
reqStream.Write(buff, 0, buff.Length);
reqStream.Close();WebResponse rep = req.GetResponse();
Stream repStream = rep.GetResponseStream();
Encoding enc = Encoding.GetEncoding("utf-8");
StreamReader sr = new StreamReader(repStream, enc);Char[] read = new Char[256];
sr.Read(read, 0, 256);return true;
}
catch(NotSupportedException ns)
{
return false;
}
}}在网上又找到一篇,可以向另一服务器POST数据的,但我没试,希望对楼主有帮助