http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 7969|回复: 4

[HttpHelper] 如何做到无视网页编码

[复制链接]
发表于 2014-8-11 11:11:47 | 显示全部楼层 |阅读模式
1金钱
最近做抓取软件,碰到这个网址貌似有点问题:
http://www.qdeic.gov.cn/newslist.aspx?id=20

这是我的源码:
   /// <summary>
    /// 根据URL获取HTML代码
    /// </summary>
    /// <param name="url">URL链接</param>
    /// <param name="html">返回的HTML代码</param>
    /// <returns>false 返回出错原因</returns>
    public static int GetHtmlByUrl(string url, out string html)
    {
        html = "";
        int success = Constant.HttpSuccessCode;
        try
        {
            HttpHelper http = new HttpHelper();
            HttpItem item = new HttpItem()
            {
                URL = url,
            };
            HttpResult result = http.GetHtml(item);
            if (result.StatusCode.ToString().ToUpper() != "OK")//状态码不为OK,则抛出异常
            {
                success = Convert.ToInt32(result.StatusCode);
                throw new Exception(result.StatusDescription);
            }
            string cookie = result.Cookie;
            item = new HttpItem()
            {
                URL = url,
                Cookie = cookie
            };
            result = http.GetHtml(item);
            html = result.Html;
        }
        catch (Exception ex)
        {
            html = ex.Message;
        }
        return success;
    }
我稍微带动了点原来的代码以更符合我的要求。经测试,抓取上述网址时出现乱码。请查证



1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2014-8-11 11:51:48 | 显示全部楼层
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
这网站上写的是这个编码,正确的是Utf-8,这网站太不规范了。你手动设置一个编码吧
回复

使用道具 举报

发表于 2014-8-11 13:46:16 | 显示全部楼层
受教了,学习中……
回复

使用道具 举报

发表于 2014-8-11 16:19:19 | 显示全部楼层
http://www.cnblogs.com/Microshao ... /09/17/1292932.html
这篇文章有参考价值,建议站长进行优化改进到类中。@站长苏飞
回复

使用道具 举报

发表于 2014-8-11 16:27:17 | 显示全部楼层
cload 发表于 2014-8-11 16:19
http://www.cnblogs.com/Microshaoft/archive/2008/09/17/1292932.html
这篇文章有参考价值,建议站长进行 ...

先谢谢了,不过这种解析方法我自己写的也有,之所以不用,是因为太浪费性能了。没必要为了几个个例,加这么多Code。影响性能。而且会加重代码量。这个我再研究下,如果有好的解决方案一定改进
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-24 16:56

© 2014-2021

快速回复 返回顶部 返回列表