šŸ“° Lovelace: RSS Feed Parser Plugin/List Card

I donā€™t see a ā€œsummaryā€ field in your feed, I see a thumb in ā€œcontent:encodedā€ instead. Did you try that instead of summary?

Youā€™ll have to manually add it. The card really needs a refresh and my plan was to add it once that was done; life has gotten in the way on that rewrite, however.

Well obviously Iā€™m doing something wrong here LOL Being still new to HA Iā€™m having a bit of trouble figuring it out hereā€¦ any help would be much appreciated!

This is my ui-lovelace entry:

- type: custom:list-card
        entity: sensor.nfl_feed
        title: NFL Feed
        feed_attribute: entries
        columns:
          - title: ''
            type: image
            add_link: link
            field: image
          - title: Title
            field: title
            style:
          - white-space: nowrap
          - title: Description
            field: description

This is what I see from the sensor:

this is what my page looks like:

title

So what am I doing wrong? I have restarted this thing so many times and still nothing is showing.

Thank you for a great News reader :slight_smile:

Not sure if it will absolutely correct it, but the field in image is not Ā“imageā€™ but rather Ā« link Ā»

an item had to be between < and > to be considered an item. In your case, the image is just an attribute to the link.

edit: wait, maybe i am wrong. did not look correctly at your picture at first

I found this error and not sure how to fix thatā€¦

Setup failed for feedparser: No setup function defined.

I canā€™t find list-card in HACS :frowning:

Other custom components from @iantrich are visible for me in HACS. I am not looking at the right spot (searched for ā€œlist cardā€ and Ianā€™s name, but no luck)?

Just tried it. no such luck. Any other ideas?

                if 'image' in self._inclusions and 'image' not in entryValue.keys():
                    images = []
                    if 'content:encoded' in entry.keys():
                        images = re.findall(r"http(.+?)\.thumb", entry['content:encoded'])
                    if images:
                        entryValue['image'] = images[0]
                    else:
                        entryValue['image'] = "https://www.home-assistant.io/images/favicon-192x192-full.png"

Thereā€™s apparently a lot of issues with thisā€¦ with no help in sight.

Anyone? I have read and re-read and went to githubā€¦ someone has to know how to fix this.

Have you tried removing the Ā« style: Ā» and the Ā« whitespace Ā» lines altogether? i donā€™t remember seeing them before for this cardā€¦

1 Like

You have description listed in the card but I see no such field in your sensor. Also the style is not properly formatted. Look at the example again

1 Like

Hi I have a direct installation of home assistant on a RPI +3B. I am currently running 0.115.0 - it works very well. I have been looking at this thread as I wanted to add a RSS feed - http://feeds.bbci.co.uk/news/world/rss.xml.
I have added HACS to my installation but have stalled at trying to add feedparser or list card. Is there a description of the steps needed to add this feed to my Lovelace UI? I am still learning about HA so I need instructions that assume I am a novice at this! Any help much appreciated. Thanks.

Iā€™ve been using the feedparser for a while now to process a number of RSS feeds. Iā€™ve had some issues with extracting the data, but I had it basically working which was good enough for the time being. Iā€™d like to go back and workout some of those issues, but recently Iā€™ve started having issues with my Craigslist feeds no longer working even though I havenā€™t changed anything. Thus it led me to believe that perhaps they have changed something in their feed which is causing the issue. My sensor looks like:

- platform: feedparser
  name: CL Buffalo Bicycles
  feed_url: 'https://buffalo.craigslist.org/search/bia?format=rss'
  date_format: '%a, %b %d %I:%M %p'
  inclusions:
    - title
    - link

And an item snippet from the feed looks like:

<item rdf:about="https://buffalo.craigslist.org/bik/d/tonawanda-chrome-spaceliner-26tires-1/7206223241.html">
<title>
Chrome Spaceliner 26"tires 1 spd w/Coaster Brake &#x0024;600
</title>
<link>
https://buffalo.craigslist.org/bik/d/tonawanda-chrome-spaceliner-26tires-1/7206223241.html
</link>
<description>
like new Original vintage/classic/antique 1964 Sears JC Higgins Ladies' Spaceliner road/cruiser bicycle.. ..chrome frame, fenders, forks, chainguard, handlebars, spokes, rims, fender struts, front truss bars and crank assembly..99.99% straight..100% ...
</description>
<dc:date>2020-10-01T10:57:47-04:00</dc:date>
<dc:language>en-us</dc:language>
<dc:rights>copyright 2020 craigslist</dc:rights>
<dc:source>
https://buffalo.craigslist.org/bik/d/tonawanda-chrome-spaceliner-26tires-1/7206223241.html
</dc:source>
<dc:title>
Chrome Spaceliner 26"tires 1 spd w/Coaster Brake &#x0024;600
</dc:title>
<dc:type>text</dc:type>
<enc:enclosure resource="https://images.craigslist.org/00000_dYkLmTGWPAG_0x20oM_300x300.jpg" type="image/jpeg"/>
<dcterms:issued>2020-10-01T10:57:47-04:00</dcterms:issued>
</item>

The only difference between this feed and others that are working appears to be the item tag has that ā€œrdf:about=ā€ information. I donā€™t know if that was there previously or not so perhaps thatā€™s the issue. The sensor for that feedā€™s state attributes shows no items:

entries: []
friendly_name: CL Buffalo Bicycles
icon: 'mdi:rss'

Anyone have any ideas of what Iā€™m doing wrong here?

I was able to add it manually to my HA setup and it is working fine for me.

1 Like

oh wow, my reddit post made it to here :smiley: did not noticed that.

I have an updated styling for my Netflix feed.

It now looks like this: 5 Images a row. Title on mouse-hover on top, with a nice frosted-glass hover-effect.
Description Text is scrollable.

It just works with the vodspy-feed-structure tho.
I hope it helps someone :slight_smile:

MyYAML looks like this:

- platform: feedparser
  name: Netflix Feed
  feed_url: "https://www.vodspy.de/netflix/rss.xml"
  inclusions:
    - title
    - published
    - summary
    - image

My Dashboard-YAML: (In on view set in Panel mode)

columns:
  - field: title
    title: ''
  - field: published
    title: ''
  - field: summary
    title: ''
entity: sensor.netflix_feed
feed_attribute: entries
title: Neu bei Netflix
type: 'custom:list-card'

Since the List-Card did not get an update since then, I included my Stylings directly into the .js file, so I dont have to deal with long styling rules in yaml.

Let me paste my styles here:
You can also add them via card-mod and styles attribute directly in yaml I guess.

              tbody {
                display: grid;
                grid-gap: 2em;
                grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
              }
                @media only screen and (max-width: 768px) {
                tbody {
                grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
                grid-gap: 0.5em;
              }
              }
              table {
                width: 100%;
              }
              table * {
                box-sizing: border-box;
                font-family: sans-serif;
              }
              th {
                display: none;
              }
              tr {
                  display: flex;
                  flex-direction: column;
                  position: relative;
                  width: 100%;
                  margin: 0;
                  overflow: hidden;
                  border-radius: 10px;
              }
              .summary img {
                width: 100%;
                height: auto;
                vertical-align: middle;
              }
              tr .title {
                  position: absolute;
                  text-align: left;
                  top: 0px;
                  padding: 35px 10px 10px 10px;
                  height: 100%;
                  width: 100%;
                  margin-left: auto;
                  margin-right: auto;
                  font-size: 24px;
                  line-height: 24px;
                  font-weight: bold;
                  color: #fff;
                  background-image: linear-gradient(rgba(0,0,0,1), rgba(0,0,0,0.5), rgba(0,0,0,0.5));
                  border-top-left-radius: 5px;
                  border-top-right-radius: 5px;
                  opacity: 0;
                  backdrop-filter: blur(3px);
                  visibility: hidden;
                  transition: opacity 0.1s;
              }
              tr .published {
                position: absolute;
                text-align: left;
                font-size: 14px;
                top: 0px;
                color: #fff;
                padding: 10px 10px;
                opacity: 0;
                transition: opacity 0.1s;

              }
              tr:hover .title,
              tr:hover .published,
              tr:hover .summary p:first-of-type {
                opacity: 1;
                visibility: visible;
              }
              tr .summary p:first-of-type {
                  position: absolute;
                  bottom: 0;
                  padding: 0 10px 10px;
                  width: 100%;
                  margin: 0 auto;
                  font-size: 16px;
                  font-weight: 400;
                  color: #fff;
                  height: 50%;
                  z-index:1000;
                  opacity: 0;
                  overflow-y: scroll;
                  border-bottom-left-radius: 5px;
                  border-bottom-right-radius: 5px;
                  text-align: left;
              }
              tr .summary p:last-of-type {
                  display: none;
              }
3 Likes

Hi,

How can I add a horizontal line between the rows in the list card? can somebody help me please?

Thanks,
Vlad

Hi,

How about multi-level tags in RSS feed? ā€œtittleā€ and ā€œdescriptionā€ are easy, but my RSS has image as following (from sensor output)

  media_content:
    - url: 'https://is.mediadelivery.fi/img/468/f27ac06cd454459c9bc5a35ab545fa76.jpg'
      type: image/jpeg
      width: '468'

If I use ā€œmedia_contentā€ in lovelace_ui, it will output [object object]. If I use just ā€œurlā€, it doesnā€™t show anything.

How to pick the image URL from this XML?

Love this RSS parser!
But, iā€™m trying to get <catregory term=> in the list but with no luckā€¦

This is a part of the feed:

- <entry>
  <id>rss:sr.se/traffic/8407999</id> 
  <title type="text">Stockholms lƤn (Halkvarning)</title> 
  <summary type="html"><p>Rapporter om mycket halt vƤglag pƄ mƄnga hƄll i lƤnet just nu. HalkbekƤmpning Ƥr pƄ gƄng, men kƶr fƶrsiktigt.<br/></p></summary> 
  <published>2020-12-30T21:29:30+01:00</published> 
  <updated>2020-12-30T21:29:30+01:00</updated> 
- <author>
  <name>Trafikredaktionen Stockholm</name> 
  </author>
  <link href="https://sverigesradio.se/sida/trafiken?id=8407999" /> 
  <category term="VƤg" /> 

As you can see the is not listed in my sensor.
Having this in conf.yaml

    inclusions:
      - title
      - summary
      - published
      - updated
      - author
      - link
      - category 

Whatā€™s wrong? :stuck_out_tongue:

Is list-card removed form HACS ? Cannot find it.

You need to add it as a custom repo. Itā€™s never been in the default repo.