c# - 使用联合从 RSS 提要获取图像?

标签 c# regex image windows-phone-7 rss

我正在构建 Windows Phone 应用程序并使用 SyndicationFeed 阅读 RSS 提要。我如何从提要中获取图片?

我需要一个转换器吗(?),但我不知道里面会有什么。我看到有一个 ImageUrl 属性,我尝试使用它,但没有任何乐趣。 :(

图片需要与提要一起按类别过滤(这是预定义的)。我知道如何过滤提要(慷慨的论坛成员帮助:)) 只是获取图像是个问题。

我使用 MSDN 示例作为背景:http://msdn.microsoft.com/en-us/library/hh487167(v=vs.92).aspx

我的供稿:http://www.zimo.co/feed/


我会使用这个正则表达式从提要中获取图像:

Regex rg = new Regex(@"<img.*?src=""(.*?)""", RegexOptions.IgnoreCase);

但问题是如何实现。所以我同时得到提要和图片:(

这是我使用的代码:

private void UpdateFeedList(string feedXML)
    {
        StringReader stringReader = new StringReader(feedXML);
        XmlReader xmlReader = XmlReader.Create(stringReader);
        SyndicationFeed feed = SyndicationFeed.Load(xmlReader);


Regex rg = new Regex(@"<img.*?src=""(.*?)""", RegexOptions.IgnoreCase);


        Deployment.Current.Dispatcher.BeginInvoke(() =>
        {

ls_text.ItemsSource = feed.Items;


        });
    }

最佳答案

RSS 规范中没有提供表示 <item> 的单个图像的任何内容正在处理。如果你想要一个图像,你可以尝试解析 <content>元素并从元素内容中提取一个或多个图像。

要从源中获取图像链接,您需要解析文本以获得所有 <img> 的匹配项文本中的标签。您可以尝试通过几种方式来做到这一点。您可以尝试对 img 标签进行 RegEx 匹配,或者您可以尝试将文本加载到 XML 文档中并对其进行解析。问题是,它不是完整的 HTML,因此您可能需要对其进行一些修改(例如,如果内容尚未包含在 <p> 标签中。

关于c# - 使用联合从 RSS 提要获取图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10045089/

相关文章:

c# - 将 Guid 表示为一组整数

c# - 尝试在 C# 的 ActiveX WebBrowser 中设置/获取 JavaScript 变量

java - 哪个更快——正则表达式匹配还是我自己的匹配函数?

java - 在小程序中将图像转换为缓冲图像

html - 响应式图像大小调整,列表项中的文本垂直居中

c# - 如何使用 Elasticsearch NEST APIs UpdateAsync 方法将值更新为 null?

c# - .NET Core 2.1 覆盖自动模型验证

python - 根据一组特定的单词拆分字符串

java - 从文本文件中读取手机号码

java - 使用 Intent 相机时给图像命名