C#获取Chrome的所有标签标题和URL

时间:2019-01-03 17:31:51

标签: c# .net

有几个c# Getting Chrome URL's from all tab线程可以解决这个问题,但是这些问题是,他们正在使用英语字符串来解决这个问题。我想要一种无需使用某些语言(例如,某些使用“新标签”)的文本即可找到URL和标签标题的方法。我尝试过的方法是这样的:

    private void getTabInfo()
    {
        Process[] processes = Process.GetProcessesByName("chrome");
        if (processes.Length == 0)
        {
            Console.WriteLine("Chrome is not running");
            return;
        }
        foreach (var process in processes)
        {
            // Ignore process with nullpointer and go to next one.
            if(process.MainWindowHandle == IntPtr.Zero)
            {
                continue;
            }
            AutomationElement root = AutomationElement.FromHandle(process.MainWindowHandle);
            Condition condition = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Window);
            var tabs = root.FindAll(TreeScope.Descendants, condition);
            Console.WriteLine(tabs.Count);
           // This results in tabs.Count being 0. Awaited: >= 1
        }
    }

请注意,我仅在此处搜索选项卡数,以检查它是否根本找不到任何选项卡(情况并非如此)。根(在代码中)似乎工作正常,所以问题出在那之后。

最终,我希望获得所有“标签”的名称及其对应的URL。

谢谢。

0 个答案:

没有答案