【问题标题】:Microsoft Cognitive Services News Search result URLsMicrosoft 认知服务新闻搜索结果 URL
【发布时间】:2016-11-20 04:57:54
【问题描述】:

我正在尝试从 Bing 搜索 API v2 迁移到新的认知搜索 API v5。 我能够连接并执行新闻搜索。但在结果中,我似乎无法获得任何搜索结果 URL(目标站点),例如 “网址” = “http://somewebsite/newsarticle” 相反,我得到的结果如下: "url": "http://www.bing.com/cr?IG=A5F6CFB521CE442EB8ADC2B9DAD61C9F&CID=0EC3F0C" ....

Microsoft 文档指出我应该得到真正的目标网址: 请参阅 api 文档中的 "url": "http://tech.firstpost.com/news-analy..." 行:https://dev.cognitive.microsoft.com/docs/services/56b43f72cf5ff8098cef380a/operations/56b449fbcf5ff81038d15cdf

但是当我在同一页面上打开测试控制台时,它会给我“http://www.bing.com/cr?IG=A5F6...”结果。

我错过了什么? 感谢您的帮助。

【问题讨论】:

    标签: microsoft-cognitive bing-search


    【解决方案1】:

    我想出了一个解决方法。似乎并不理想,但目前分叉。写了一个从 Bing URL 解析目标 URL 的方法:

    url = TryGetUrlFromBingUrl(BingResultUrl);
    
    
    
    private string TryGetUrlFromBingUrl(string BingURL)
    {
        var queryString = HttpUtility.ParseQueryString(BingURL);
        if (!string.IsNullOrEmpty(queryString["r"]))
        {
            return queryString["r"];
        } else
        {
            return BingURL;
        }
    }
    

    【讨论】:

      【解决方案2】:

      Bing 现在对新闻和网络搜索的返回链接进行编码。您只会获得纯文本的显示 URL。也就是说,编码的 URL 响应确实包含它们引用的纯文本 URL 的所有元素。

      因此,如果您需要纯文本 URL,最好的选择几乎总是按照 gabics 的建议解析编码的 URL。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-04-05
        • 2020-09-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多