这是一个页面 显示出来的内容类似于这样现在问题来了 我在这页面的开头结尾打了两行乱码,
为的是采集这乱码中间的内容,只是做一个标记而已
但是采集不到样式跟table等等这些html语言 只能采集到显示在页面上的文字
我想请问有没有什么办法能够将编译好的HTML页面的源码显示出来但是还不能用类似pre 标签 因为中间有个C#语句块 如果这样显示出来 所有的C#语句块就会作为空格断档显示在页面上试问有没有一种显示方法能够将 类似编译后的HTML代码显示出来
为的是采集这乱码中间的内容,只是做一个标记而已
但是采集不到样式跟table等等这些html语言 只能采集到显示在页面上的文字
我想请问有没有什么办法能够将编译好的HTML页面的源码显示出来但是还不能用类似pre 标签 因为中间有个C#语句块 如果这样显示出来 所有的C#语句块就会作为空格断档显示在页面上试问有没有一种显示方法能够将 类似编译后的HTML代码显示出来
解决方案 »
- 我用的confrim对话框在火狐和opera中为什么不会弹出??
- SQLconnection 反复打开关闭问题
- 一个从数据库提取数据的问题 ,50分
- 动态添加DropDownList的问题?
- textbox的问题
- 在做新闻发布的练习的时候遇到问题.数据库里的文字输出到页面,Response.Write不能自己控制位置,用什么其他办法比较好?
- asp.net中javascript怎么应用在虚拟形象中呢??
- 关于发布文章时出现的问题。。。。。。急! 请高手帮忙
- 我想在我的页面上做一个按钮,只要按下就可以打开访问此页面用户机器内的OUTLOOK
- 请问怎样在aspx页中打开excel时Sheet1位置的名称不改变?
- 这句sql怎么改写成linq to sql急...
- 请教一gridview用法
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.IO;
using System.IO.Compression;
using System.Text.RegularExpressions;namespace WikiPageCreater.Common
{
public class PageHelper
{
/// <summary>
/// 根据 url 获取网页编码
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
public static string GetEncoding(string url)
{
HttpWebRequest request = null;
HttpWebResponse response = null;
StreamReader reader = null;
try
{
request = (HttpWebRequest)WebRequest.Create(url);
request.Timeout = 20000;
request.AllowAutoRedirect = false; response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK && response.ContentLength < 1024 * 1024)
{
if (response.ContentEncoding != null && response.ContentEncoding.Equals("gzip", StringComparison.InvariantCultureIgnoreCase))
reader = new StreamReader(new GZipStream(response.GetResponseStream(), CompressionMode.Decompress));
else
reader = new StreamReader(response.GetResponseStream(), Encoding.ASCII); string html = reader.ReadToEnd(); Regex reg_charset = new Regex(@"charset\b\s*=\s*(?<charset>[^""]*)");
if (reg_charset.IsMatch(html))
{
return reg_charset.Match(html).Groups["charset"].Value;
}
else if (response.CharacterSet != string.Empty)
{
return response.CharacterSet;
}
else
return Encoding.Default.BodyName;
}
}
catch
{
}
finally
{ if (response != null)
{
response.Close();
response = null;
}
if (reader != null)
reader.Close(); if (request != null)
request = null; } return Encoding.Default.BodyName;
} /// <summary>
/// 根据 url 和 encoding 获取当前url页面的 html 源代码
/// </summary>
/// <param name="url"></param>
/// <param name="encoding"></param>
/// <returns></returns>
public static string GetHtml(string url, Encoding encoding)
{
HttpWebRequest request = null;
HttpWebResponse response = null;
StreamReader reader = null;
try
{
request = (HttpWebRequest)WebRequest.Create(url);
request.Timeout = 20000;
request.AllowAutoRedirect = false; response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK && response.ContentLength < 1024 * 1024)
{
if (response.ContentEncoding != null && response.ContentEncoding.Equals("gzip", StringComparison.InvariantCultureIgnoreCase))
reader = new StreamReader(new GZipStream(response.GetResponseStream(), CompressionMode.Decompress), encoding);
else
reader = new StreamReader(response.GetResponseStream(), encoding);
string html = reader.ReadToEnd(); return html;
}
}
catch
{
}
finally
{ if (response != null)
{
response.Close();
response = null;
}
if (reader != null)
reader.Close(); if (request != null)
request = null; } return string.Empty;
}
}
}