Récupérations valeurs sur page web

Bonjour tu peux aussi voir du côté du script info climat

1 « J'aime »

Merci @olive je bosses dessus mais je débute, j’espère arriver à quelque chose

1 « J'aime »

Bonjour @Sh0n, tu aurais un exemple sur lequel je pourrais me baser stp?

Merci

Bonjour @anon53349806, en effet Lunarok a fait un super boulot avec le plugin Salat que j’utilises depuis des années. Mais là c’est pour mon père qui voudrait récupérer les heures exact de ce site (qui sont différente du plugin).

Merci

1 « J'aime »

Bonjour @ajja17orange,

j’ai checké mais c’est encore trop complexe pour moi lol, évidemment je te remercie et je vais bosser dessus.

Merci

Tu m’a donné envie …
je joue la dessus depuis ce matin.

Quel que ligne de script pour te donner une idée de la simplicité
aprés ca dépend aussi du site

le script qui récupère le nombre d’heures de soleil pour
demain ou un autre jour sur météo blue

#! /usr/bin/env python3
# coding: utf8
import requests
from bs4 import BeautifulSoup
res = requests.get("https://www.meteoblue.com/fr/meteo/semaine/bobigny_france_3032179")
soupe=BeautifulSoup(res.content, "html.parser")
#heures de soleil demain
print(int(soupe.find_all(class_ = "tab_sun")[1].text[62:64]))

il faut bien sur changer la ville au cas ou et le [1]
qui peut prendre
0 aujourd’hui
1 demain
3 j+2
etc …
dans la limite de 0 a 6

1 « J'aime »

Bonjour,

je me suis finalement lancé sur le script, ça réponds mais il me manque du vocabulaire :frowning_face:

Voici la partie du code qui m’intéresse :
Capture d’écran 2020-05-03 à 18.03.50

J’aimerais pouvoir récupérer les heures pour Fajr, Dhuhr, 'Asr, Maghrib et 'Isha.

J’ai réussis à récupérer les noms mais je ne sais quelle commande utiliser pour récupérer les horaires :

Merci pour votre aide :pray:

comme tu a mis div.prayers:name
met div.prayers:time

J’ai mis div.prayers:time, sauvegardé et testé :

Idem, il ne me ressort que les noms

ajoute un div ou 2 div
div.prayer.div.div:time

Je viens d’essayer sans succès :

div.prayers.div.div.div.div:time
div.prayers.div.div.div:time
div.prayers.div.div:time
div.prayers.div:time

J’ai aussi essayé :
div.prayers>div>div:time

j’obtient aussi les noms mais à la suite :

Je sais pas j’ai pas jouer avec le html / script
surement une histoire d’accés au dom mais ca manque d’exemples.
j’ai jouer avec python et la lib bs4 BeautifulSoup.

Merci @olive, je vais continuer à fouiller :ok_hand: :v:

Il y a je pense une petite subtilité avec cette page.
Certaines des données sont remontées par un script et n’apparaissent pas dans le DOM de la page (les balises sont vides avec Beautifulsoup)

Par contre, elles sont dispos dans une des balises script en fin de page, du coup avec un petit script python (certe pas des plus beaux, mais fonctionnel) on obtient bien la liste des heures souhaitées !

#! /usr/bin/env python3
import requests
from bs4 import BeautifulSoup
res = requests.get("https://mawaqit.net/fr/grande-mosquee-de-paris")
soupe=BeautifulSoup(res.content, "html.parser")
time_list = soupe.find_all("script")
times = time_list[2].text.split("times")[1].split("],\"iqama")[0][3:].replace("\"", "").replace(":","h").split(",")
names=["Fajr", "Dhuhr", "`Asr", "Maghrib", "`Isha"]
for i in range(0, len(names)) :
    print(names[i] + " : " + times[i])

Le résultat donne :

Fajr : 04h39
Dhuhr : 13h48
`Asr : 17h49
Maghrib : 21h12
`Isha : 22h41

A adapter et à améliorer mais cela donne une base :wink:

1 « J'aime »

sauf que ca

#! /usr/bin/env python3

ca fonctionne pas dans un plugin script sur un fichier.py

il faut passer par les shell

#!/bin/sh
python3 /chemin/script.py

si non c’est un python2 qui execute …

a moins qu tu ais une autre solution ?

Exacte ! Mon script est un simple exemple de scrapping en python donc il faut juste l’adapté à l’usage sous jeedom :wink:

Créer un fichier un .py puis l’appeler depuis le plugin script comme tu l’as noté (en shell ou en PHP par exemple).

L’autre solution serait de l’intégrer dans un plugin, mais là on passe à un autre level :slight_smile:

Oui autre level et pas franchement d’intérêt !

Wow,

franchement merci les gars, super taf. Je suis malheureusement largué, c’est déjà un autre level pour moi @olive :sweat_smile:
Je vais essayer de trouver des tuto pour :

-Créer un fichier un .py puis l’appeler depuis le plugin script comme tu l’as noté (en shell ou en PHP par exemple). (Merci @Sh0n)

:ok_hand: :v:

Re,

j’ai réussi à mettre la main sur le .csv qui regroupe les horaires de l’année sur 12 fichiers (mois).
Est-ce que vous savez s’il existe un moyen de récupérer ces horaires via un script en fonction du jour?

ça se présente comme ça :

Merci

Le CSV étant avant tout du texte, tu peux faire un script pour parser ton fichier assez facilement, comme pour la page web, tu peux le faire en bash directement ou alors en PHP ou encore Python.

Par exemple pour Python la doc est assez simple : csv — Lecture et écriture de fichiers CSV — Documentation Python 3.10.5

Ou en bash, tu trouvera également des exemples assez facilement comme celui-ci : https://mikael-flora.fr/Parse-a-csv-file-in-bash.html