Récupérer les prix de carburants

Merçi…j; avais plusieurs erreurs/soucis avant de découvrir que Map n’accepte pas trops d’entités.
Si je goupe en fltrant le nom ‹ prix › ma liste est trop grand pour Map
Pour les stations avec ‹ 611 › dans le nom ça mache bien (que 6)…avex ‹ prix › … trops… je cherche comment limiter les résultats sur une max de pe. 15)

type: custom:auto-entities
card:
  type: map
  show_empty: false
filter:
  template: >
    {% for x in expand(states.sensor)| sort(attribute='state')| map(attribute='entity_id') %}
    {% if 'prix' in x %}'{{x}}',{% endif %}
    {%- endfor %}

J’ai pas la structure de tes stations sous la main mais tu peux intercaler un critère :

selectattr('entity_id', 'match', '*carburant*')

L’idée serait d’avoir un critère géographique

Ouioui…ça marche mais j ai trops de résultats… le nombre des stations autour de moi est 39…et je doit limiter la liste vers (??) 20 ??

J’ai essaié ça ma ça change la liste qui n’est plus accepté par Map

{% set ns = namespace(count=0) %}
{% for x in expand(states.sensor)| sort(attribute='state')| map(attribute='entity_id') %}
{% if 'prix' in x and ns.count < 15 %}'{{x}}',{% set ns.count = ns.count + 1 %}{% endif %}{%- endfor %}

j’ai pas l’air d’avoir de limite de taille à map … 817 c’est bien au dela de tes 39 qui coincent

EDIT : on parle bien de MAP la fonction jinja et pas de la carte, juste dans le doute ?

1 « J'aime »

Essaye en ajoutant list

1 « J'aime »

Pour moi, la limitation est sur la carte… Et non la fonction map… :innocent:

C’est en faite la carte… ou la combinaison entre auto-entities et map-card. Et je ne peut pas filtrer par ID/wildcard car je veux presenter le top-15 (ou 20) des stations moins chère

EDIT : et en utilisant une methode avec compteur, c’est plus une ‹ list › … je ne suis certainement pas une specialiste en jinja non plus
CA: c’est bon et accepté par map card

dans ce cas, manipule le tableau obtenu dans ta boucle:

{% set all=expand(states.sensor)| sort(attribute='state')| map(attribute='entity_id')|list %}
{% set filtered=all[0:19] %}
{{ filtered }}
{{ all}}

Filtered, c’est les 20 valeurs du début

Merçi pur rester a côté… :slight_smile:
J’ai juste fait trial/error, ajoutant des [ et ] …et maintenant ça marhce…le maximum est 12

type: custom:auto-entities
card:
  type: map
  show_empty: false
filter:
  template: >
    [{% set ns = namespace(count=0) %} {% for x in expand(states.sensor)|
    sort(attribute='state')| map(attribute='entity_id') %} {% if 'prix' in x and
    ns.count < 12 %}'{{x}}',{% set ns.count = ns.count + 1 %}{% endif %}{%-
    endfor %}]

1 « J'aime »

Oui c’est bien de ton fork dont je parle. Concernant un ESPACE, ca fonctionnait avant, il ne serait pas apparu tout seul normalement :wink:.
Et oui quand je remplace Gasoil par E98, les 5 stations que je demande apparaissent bien.

Le soucis ne semble pas venir de ton fork. car dans l’outil de développement, il y a bien les sensor avec chaque stations.

Concernant les logs j’ai cela, mais cela ne concerne pas l’affichage

Et dans l’éditeur de Lovelace j’ai cela

Je pense que cela provient de la flex-card, mais j’avoue ne pas trop savoir où chercher

Hello
Il doit manquer quelque chose car j’ai créé la carte en copiant collant ton code et ça affiche rien .
Philippe

as tu flex-card d’installé ??? car non il ne manque rien


la différence avec et sans erreur est juste le nom du carburant souhaité

Donc, car les soucis sont depuis quelques jours, c’est pas une maj de mon fork à la base.
Je continue d’assumer des soucis autour des données de gouv.fr.
Dans mon fork j’essaye de filtrer tous ces irrégularités mais il faut que je les connaisse avant :slight_smile:
De l’erreur … je pense (assume) que l’attribute ‹ Station City › (a=Station Name, b=Station City ??) n’existe pas dans un de tes stations…stp verifier?
Si to change Station City vers Station Address…c’est mieux ou pas?

non avec station address le problème est le même. d’ailleurs j’utilisais Station address jusque hier soir, ou je suis passé à Station city pour essayer de trouver l’erreur.

Donc après analyse, il n’y a pas de station address qui manque. par contre il manque souvent latitude et longitude. Par contre j’ai trouvé une station bizarre et c’est certainement elle qui pose problème

Ah…oui…je les connais aussi… des objects anciennes… il faut les effacer.
Sur les lat/lon (introduit il y a 2 jours)…je vais voir… moi j’ai 3 ‹ vide › et 3 avec ‹ undefined ›…curieux

Soucis avec les lat/lon était avec le fichier des ‹ stations ›, ces données sont vraiment vieux en manquant des lat/lon aussi…
Nouvelle solution dispo (utilisant le fichier xml): version 1.1.5

Hello
Sitôt dit sitôt mis à jour !
Tu peux donner ton code complet pour la card carte ?
Merci d’avance e
Phil

type: custom:auto-entities
card:
  type: map
  show_empty: false
filter:
  template: >
    [{% set ns = namespace(count=0) %} {% for x in expand(states.sensor)|
    sort(attribute='state')| map(attribute='entity_id') %} {% if 'prix' in x and
    ns.count < 12 %}'{{x}}',{% set ns.count = ns.count + 1 %}{% endif %}{%-
    endfor %}]

c’est ce que j’avais fait.
je suis repassé en mode edition graphique de la card, fait une modif (je sais plus quoi !) et ca fonctionne.
next step: filtrer par type (toutes le stations ne font pas de l’E85) et afficher autre chose que « P » ou alors afficher le prix « filtré » par type de carburant au passage de la souris
Possible « docteur » ?!
Philippe