可以动态获取某个网页上的文字吗?请教
我想在这个页面里获取另个一个页面上的文字不知道怎么处理?哪们大侠能够指点!先谢了 问题点数:0、回复次数:10Top
1 楼tengjian1981(新的一年又来到)回复于 2004-12-01 08:58:18 得分 0
以参数传给另一个页面Top
2 楼tengjian1981(新的一年又来到)回复于 2004-12-01 09:00:17 得分 0
用Session传也可以;
还有一种是在旧的页面上post一下,再到新页面上去get此数值.Top
3 楼OmT(OmT)回复于 2004-12-01 09:03:22 得分 0
是这样:比如有A和B两个页面,B页上会动态生成一些内容,我想从A上获取B页上生成后的文字,不知道可不可以!Top
4 楼xiaomaolover(小M)回复于 2004-12-01 09:03:29 得分 0
可以,,你可以用responsestream实现
具体的我不太记得了.
可以把某个网页的以流的形式,读进来..
然后在HTML代码中进行分析,找到你要文字.
这样可以实现偷新闻..Top
5 楼zhanqiangz(闲云野鹤-Overriding)回复于 2004-12-01 09:07:28 得分 0
socket
webrequestTop
6 楼fjzh99(好好学习.NET)回复于 2004-12-01 09:08:41 得分 0
以流的形式读出你所要网页的HTML代码,然后用正则表达式取出你需要的内容.Top
7 楼OmT(OmT)回复于 2004-12-01 09:12:37 得分 0
谢谢!不过具体操作,自己还是搞不定,哪位大侠可以具体一点吗?Top
8 楼komatuxhq(www.chinamis.net)回复于 2004-12-01 09:12:38 得分 0
分析webrequest所得到的HTML代码Top
9 楼komatuxhq(www.chinamis.net)回复于 2004-12-01 09:19:25 得分 0
1.得到HTML代码,参考下面的代码
保存页面的HTML
/// <summary>
///
/// </summary>
/// <returns></returns>
public string SavePageHtml(string PageUrl,string SaveDest)
{
//获取远程信息
string ServerInfo="";
try
{
WebRequest request = WebRequest.Create(PageUrl);
request.Credentials =CredentialCache.DefaultCredentials;
string If_Proxy = System.Configuration.ConfigurationSettings.AppSettings["IF_Proxy"].ToString();
if(If_Proxy=="Y")
{
string proxyServer=System.Configuration.ConfigurationSettings.AppSettings["ProxyServer"].ToString();
string ProxyUser=System.Configuration.ConfigurationSettings.AppSettings["ProxyUser"].ToString();
string ProxyPass=System.Configuration.ConfigurationSettings.AppSettings["ProxyPass"].ToString();
string ProxyDomain=System.Configuration.ConfigurationSettings.AppSettings["ProxyDomain"].ToString();
WebProxy myProxy=new WebProxy();
myProxy = (WebProxy)request.Proxy;
myProxy.Address = new Uri(proxyServer);
myProxy.Credentials = new NetworkCredential(ProxyUser,ProxyPass, ProxyDomain);
request.Proxy = myProxy;
}
WebResponse response = request.GetResponse();
Stream resStream = response.GetResponseStream();
StreamReader sr = new StreamReader(resStream,Encoding.GetEncoding("gb2312"));
ServerInfo=sr.ReadToEnd();
if(SaveDest!="")
{
StreamWriter sw=new StreamWriter(SaveDest,false,Encoding.GetEncoding("gb2312"));
sw.WriteLine(ServerInfo);
resStream.Close();
sr.Close();
sw.Close();
}
}
catch(Exception ee)
{
;
}
return ServerInfo;
}Top
10 楼komatuxhq(www.chinamis.net)回复于 2004-12-01 09:20:43 得分 0
2.得到制定文字:检索SavePageHtml所返回的字符串,找到指定文字即可Top




