苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

HttpHelper万能框架(V2.3-含.netcore) HttpHelper官方出品,无敌框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 最牛的爬虫类,没有爬不到只有想不到 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 472|回复: 4

[更新] HttpHelper万能框架V2.3.66正式发布,请大家及时更新

[复制链接]
发表于 2019-11-1 08:57:19 | 显示全部楼层 |阅读模式
HttpHelper万能框架V2.3.66正式发布,请大家及时更新

本次修复的问题如下
[C#] 纯文本查看 复制代码
            //1.修复提取Title不兼容大小写的问题属性

            //2.修复提取Html代码不完整的Bug

            //3.增加GetHtmlKeywords,和GetHtmlDescription方法

            //4.增加对称加密算法

            //5.修复获取img标签的算法



HttpHelper万能框架V2.3.66正式发布,请大家及时更新

1. 获取Title方法

     title修复之后几乎可以直接获取所有页面的title大家可以在线测试  http://seo.ruituoyun.com/title
使用方法如下
[C#] 纯文本查看 复制代码
string title= HttpHelper.GetHtmlTitle(html)

只需要将html页面代码传入如下方法即可

2. 获取keywords

使用方法
[C#] 纯文本查看 复制代码
string  keywords = HttpHelper.GetHtmlKeywords(html);

在线测试http://seo.ruituoyun.com/keywords

3.见面描述description

使用方法
[C#] 纯文本查看 复制代码
 string description = HttpHelper.GetHtmlDescription(html);

在线测试 http://seo.ruituoyun.com/description

4.获取页面所有的A链接。


[C#] 纯文本查看 复制代码
   List<AItem> list = HttpHelper.GetAList(html, host);

注:
AItem

[C#] 纯文本查看 复制代码
 //
    // 摘要:
    //     A连接对象 Copyright:[url]http://www.httphelper.com/[/url]
    public class AItem
    {
        public AItem();

        //
        // 摘要:
        //     链接地址
        public string Href { get; set; }
        //
        // 摘要:
        //     链接文本
        public string Text { get; set; }
        //
        // 摘要:
        //     链接的图片,如果是文本链接则为空
        public ImgItem Img { get; set; }
        //
        // 摘要:
        //     整个连接Html
        public string Html { get; set; }
        //
        // 摘要:
        //     A链接的类型
        public AType Type { get; set; }
        //
        // 摘要:
        //     A链接的属性 0是内连链,1是外链,2不是链接
        public int attr { get; set; }
        //
        // 摘要:
        //     是否_blank链接
        public bool is_blank { get; set; }
        //
        // 摘要:
        //     是否写title
        public bool is_title { get; set; }
    }


host是指的当前html的host主机,主要是用于排除内个链接的。
大家可以直接在线测试看效果http://seo.ruituoyun.com/alink?site=http%3A%2F%2Fwww.sufeinet.com
如下
QQ截图20191101085014.png

具体方法如下
[C#] 纯文本查看 复制代码
//get host
                        string host = site != null ? new Uri(site).Host : string.Empty;
//a list
                        List<AItem> list = HttpHelper.GetAList(html, host);
                        if (list != null)
                        {
                            alist = list;
//所有的图片链接
                            imglist = alist.Where(t => t.Type == CsharpHttpHelper.Enum.AType.Img).ToList();
//所有的内部链接
                            neibulist = alist.Where(t => t.attr == 0).ToList();
//内部链接跳出的
                            neibuoutlist = alist.Where(t => t.attr == 0 && t.is_blank).ToList();
//外部链接
                            waibulist = alist.Where(t => t.attr == 1).ToList();
//外部链接跳出的
                            waibuoutlist = alist.Where(t => t.attr == 1 && t.is_blank).ToList();
//所有的无效链接
                            wuxiaolist = alist.Where(t => t.attr == 2).ToList();
//所有不带Tittle的链接
                            notitlelist = alist.Where(t => t.is_title == false).ToList();
                        }


5.获取所有的img图片标签的

在线测试效果http://seo.ruituoyun.com/img?site=http%3A%2F%2Fwww.sufeinet.com
与上的同大致相同使用方法如下

[C#] 纯文本查看 复制代码
  //get host
                        string host = site != null ? new Uri(site).Host : string.Empty;
                        //get imglist
                        var list = HttpHelper.GetImgList(html);
                        if (list != null)
                        {
                            mlist = list;
                            //获取所有的图片标签
                            altlist = mlist.Where(t => t.alt == null).ToList();
                            //所有不带alt的
                            kongaltlist = mlist.Where(t => t.alt == string.Empty).ToList();
                            //所有不带title的
                            titlelist = mlist.Where(t => t.title == null).ToList();
                            //title为空的
                            kongtitlelist = mlist.Where(t => t.title == string.Empty).ToList();
                            //alt和title都不存在
                            twolist = mlist.Where(t => t.alt == null && t.title == null).ToList();
                            //alt和title都为空的
                            kongtwolist = mlist.Where(t => t.alt == string.Empty && t.title == string.Empty).ToList();
                        }


好了大家有兴趣的可以下载最新版本进行测试。
有什么问题请回复给你留言


发表于 2019-11-1 09:42:18 | 显示全部楼层
发表于 2019-11-1 10:20:32 | 显示全部楼层
发表于 2019-11-1 12:28:23 | 显示全部楼层
回复

使用道具 举报

发表于 2019-11-1 22:03:58 | 显示全部楼层
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

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

GMT+8, 2019-12-7 23:04

© 2017-2018

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