吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 10182|回复: 172
收起左侧

[原创工具] chrome、edge浏览器书签去重复

    [复制链接]
jiaoshudong 发表于 2023-3-28 09:04
本帖最后由 jiaoshudong 于 2023-3-28 09:16 编辑

第一次发帖,轻拍。
每人都会收藏书签,时间长了会积累很多,还会有重复收藏,特此写出如下软件。
通过查看导出的书签发现,书签文件是一个html文件,内容也是html格式,每个书签都是一个A标签,快捷功能按钮不是,里面会有ADD_DATE添加日期属性(unix时间),LAST_MODIFIED属性(应该是更新日期,也是unix格式),还有最重要的HREF属性,和ICON图标属性。
通过读取书签文件的每行标签,判断HREF链接,如果集合不存在该链接,则添加到一个集合并写入新文件(是按照原来的标签内容写的),如果存过则跳过,并且不写入新文件。以上就是该软件的逻辑,另外几个辅助方法是从网上找的,谢谢大佬的贡献。
本来想用XPATH匹配HREF内容,前面没写过,就直接用的从网上找的方法了。
核心就是判断HREF是否重复。


运行逻辑就是,从chrome或edge导出全部书签,然后把路径写入软件需要去重复的文本框。然后想把生成后的新书签放到哪,写上路径和文件名,写入到去重复后的文本框内。然后点击按钮稍等一会就会把新文件生成到“去重复后的”文本框内写的路径文件里,然后再把chrome或edge的书签全部删除,再把新生成的书签导入进去。(因为之前已经导出了一个全部书签,那个就算备份了,如果新生成的去重复书签不满意,可以把原来的全部书签重新导入回去)。

因为没加验证与异常处理,所以大家手动写一下文件路径吧

附件怎么设置成免费的?大佬们帮忙转一下蓝奏链接吧

    int i = 0;
    private void button1_Click(object sender, EventArgs e)
    {
        Encoding encode = System.Text.Encoding.GetEncoding("UTF-8");
        string dirPath = @"E:/";
        DirectoryInfo dirInfo = new DirectoryInfo(dirPath);
        FileInfo[] files = dirInfo.GetFiles();
        string filename = textBox2.Text;// dirPath + "/new.html";

        StreamWriter sw = new StreamWriter(filename, true, encode);

        List<string> lines = new List<string>();
        // 读取HTML文件
        string fileName = textBox1.Text;// @"E:\chrome.html";
        StreamReader sr = new StreamReader(fileName, encode);

        // 逐行读取文件内容
        string line = "";
        while ((line = sr.ReadLine()) != null)
        {
            if (line.Contains("HREF="))
            {
                var val = GetTitleContent(line, "A", "HREF");
                if (lines.Contains(val))
                {
                    Debug.WriteLine("chongfu:" + val);
                    i++;
                    DisplayInfo(richTextBox1, i + "." + val);
                }
                else
                {
                    lines.Add(val);
                    sw.WriteLine(line);
                }
            }
            else
            {
                lines.Add(line);
                sw.WriteLine(line);
            }
        }

        sw.WriteLine();
        sw.Flush();
        // 关闭文件流
        sr.Close();
    }


辅助方法,谢谢大佬的方法
    /// <summary>
    /// 获取字符中指定标签的值
    /// 2、获取标签中的属性: string str = "<a href=\"www.csdn.net\" class=\"main\">CSDN</a>"  获取 “href” 的结果:www.csdn.net
    /// 调用例子:string href = GetTitleContent(str, "a", "href");
    /// </summary>
    /// <param name="str">字符串</param>
    /// <param name="title">标签</param>
    /// <param name="attrib">属性名</param>
    /// <returns>属性</returns>
    public static string GetTitleContent(string str, string title, string attrib)
    {

        string tmpStr = string.Format("<{0}[^>]*?{1}=(['\"\"]?)(?<url>[^'\"\"\\s>]+)\\1[^>]*>", title, attrib); //属性值

        Match TitleMatch = Regex.Match(str, tmpStr, RegexOptions.IgnoreCase);

        string result = TitleMatch.Groups["url"].Value;
        return result;
    }

书签文件内容

书签文件内容

软件运行界面,显示出来的是重复的连接

软件运行界面,显示出来的是重复的连接

chrome,edge书签去重复.rar

10.87 KB, 下载次数: 811, 下载积分: 吾爱币 -2 CB

书签去重复文件

免费评分

参与人数 33吾爱币 +35 热心值 +30 收起 理由
Google才知道 + 1 我很赞同!
bingwentao + 1 + 1 谢谢@Thanks!
迎着风 + 1 + 1 我很赞同!
池刺 + 1 谢谢@Thanks!
adslpal + 1 + 1 我很赞同!
sharenle + 1 + 1 我很赞同!
我本心向明月 + 1 + 1 热心回复!
路漫漫w + 1 + 1 热心回复!
vinsonkon + 1 + 1 谢谢@Thanks!
Jetzow + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
gorbydon + 1 + 1 我很赞同!
cfl300 + 1 + 1 谢谢@Thanks!
冷丶眸 + 1 + 1 谢谢@Thanks!
tonybord + 1 + 1 转蓝奏:https://wwaf.lanzoum.com/ixBwj15h7yej
hh442 + 1 + 1 我很赞同!
Roxyy + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
stonejun + 1 我很赞同!
lcwww + 2 + 1 数百书签乱糟糟,一下就去重复了~
confiant + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
fengfrw + 1 谢谢@Thanks!
zhzng + 1 + 1 谢谢@Thanks!
冬天冷了多穿点 + 1 我很赞同!
lp9466494 + 1 谢谢@Thanks!
JNTM123 + 1 + 1 热心回复!
akinaxsf + 1 + 1 我很赞同!
foreverkeo + 1 + 1 热心回复!
北冥鱼 + 1 热心回复!
tangzaoyan + 1 + 1 热心回复!
heroabo + 1 + 1 谢谢@Thanks!
chmwyy + 1 + 1 谢谢@Thanks!
winqcj + 1 + 1 我很赞同!
cxqdly + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
风之暇想 + 7 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

封神之剑 发表于 2023-3-30 06:39
有没有去除无效书签的功能?用了多年的浏览器收藏了一大堆好多都打不开了
halloseven 发表于 2023-3-30 08:19
头像被屏蔽
R163N8 发表于 2023-3-30 10:24
lgh978 发表于 2023-3-30 05:38
感谢楼主分享!
knife7272 发表于 2023-3-30 06:34
思路还是不错,谢谢楼主的分享。
头像被屏蔽
Nine99 发表于 2023-3-30 08:40
提示: 该帖被管理员或版主屏蔽
jsdhmqh 发表于 2023-3-30 08:48
不错,再加上个个去掉失效链接的功能更好了!
Wonderfulgoal 发表于 2023-3-30 09:02
重复的浏览器不是会提示已经收藏过了吗?其实更需要的是失效检测
Aragornjf 发表于 2023-3-30 09:18
感谢分享。这个不错。每次都是手动清除,费劲了
aihualpc 发表于 2023-3-30 09:31
实用呀,楼主辛苦了。拿走了,谢谢!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-3 23:47

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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