static string GetHtml(string url) { return GetHtml(url, null); } // 获取网页的HTML内容,指定Encoding static string GetHtml(string url, Encoding encoding) { byte[] buf = new WebClient().DownloadData(url); if (encoding != null) return encoding.GetString(buf); string html = Encoding.UTF8.GetString(buf); encoding = GetEncoding(html); if (encoding == null || encoding == Encoding.UTF8) return html; return encoding.GetString(buf); } // 根据网页的HTML内容提取网页的Encoding static Encoding GetEncoding(string html) { string pattern = @"(?i)\bcharset=(? <charset>[-a-zA-Z_0-9]+)"; string charset = Regex.Match(html, pattern).Groups["charset"].Value; try { return Encoding.GetEncoding(charset); } catch (ArgumentException) { return null; } } 从CSDN找个这个方法区别的网站内容,但是有个问题。网页的CSS文件和JS文件别人用的是相对地址,无法获取。(包括CSS里可能有设置背景图片之类的用的也是相对地址,是相对于CSS文件的地址。) 请问如何能获取他们的绝对地址?各位大虾帮帮忙。。急用。
添加回答
举报
0/150
提交
取消