Récuperation data Yahoofinance onglets Sommaires Statistiques Profil
Bonjour à tous
Je recherche de l'aide sur la récupération de données sur yahoofinance à l'aide de script sur google sheet, j'ai vu que vous étiez caler sur ce forum sur le sujet.
Je vous expose mon problème, je travaille actuelle sur un fichier google sheet sur la gestion d'actions et je souhaite extraire des données depuis yahoo finance à partir des onglets "Sommaires", "Statistiques" et "Profil". Si possible avoir accés à toutes les données sur ces onglets mais je ne sais pas comment y accéder.
Voici des exemples de ce que je souhaite récupérer dans ces onglets:
- Ongets "profil" : le secteur de l'entreprise de manière automatique.
- Ongets "sommaires" : avoir accès à l'ensemble des données de manière individuelle.
- Ongets "statistiques" : avoir accès à l'ensemble des données de manière individuelle.
J'ai aussi vu sur le forum qu'il y a un fichier qui permettait de parcourir le donnée du fichier JSON, je ne peux pas y avoir accès : https://docs.google.com/spreadsheets/d/1EKu4MbuwZ6OTWKvyIJrMfnXf7gXfU8TWU3jwV4XEztU/copy
Comment puisse-je trouver les Items correspondant à mes besoins pour les onglets "Sommaires", "Statistiques" et "Profil" ?
Pouvez vous s'il vous plait m'aider sur ce sujet.
Items de ce type mais pour les onglets "Sommaires", "Statistiques" et "Profil"
fiftyTwoWeekHighChangefiftyTwoWeekLowChangeregularMarketDayLowregularMarketPriceregularMarketVolumemarketCapfiftyTwoWeekLowChangePercentregularMarketDayRangefiftyTwoWeekHighfiftyTwoWeekHighChangePercentfiftyTwoWeekLowregularMarketChangePercent
En attendant votre retour, je vous remercie d'avance;
Bonjour,
si tu pouvais séparer
fiftyTwoWeekHighChangefiftyTwoWeekLowChangeregularMarketDayLowregularMarketPriceregularMarketVolumemarketCapfiftyTwoWeekLowChangePercentregularMarketDayRangefiftyTwoWeekHighfiftyTwoWeekHighChangePercentfiftyTwoWeekLowregularMarketChangePercent
Bonjour à tous
Je recherche de l'aide sur la récupération de données sur yahoofinance à l'aide de script sur google sheet, j'ai vu que vous étiez caler sur ce forum sur le sujet.
Je vous expose mon problème, je travaille actuelle sur un fichier google sheet sur la gestion d'actions et je souhaite extraire des données depuis yahoo finance à partir des onglets "Sommaires", "Statistiques" et "Profil". Si possible avoir accés à toutes les données sur ces onglets mais je ne sais pas comment y accéder.
Voici des exemples de ce que je souhaite récupérer dans ces onglets:
- Ongets "profil" : le secteur de l'entreprise de manière automatique.
- Ongets "sommaires" : avoir accès à l'ensemble des données de manière individuelle.
- Ongets "statistiques" : avoir accès à l'ensemble des données de manière individuelle.
J'ai aussi vu sur le forum qu'il y a un fichier qui permettait de parcourir le donnée du fichier JSON, je ne peux pas y avoir accès : https://docs.google.com/spreadsheets/d/1EKu4MbuwZ6OTWKvyIJrMfnXf7gXfU8TWU3jwV4XEztU/copy
Comment puisse-je trouver les Items correspondant à mes besoins pour les onglets "Sommaires", "Statistiques" et "Profil" ?
Pouvez vous s'il vous plait m'aider sur ce sujet.
Items de ce type mais pour les onglets "Sommaires", "Statistiques" et "Profil"
regularMarket
Change|regularMarketPreviousClose
regularMarketPrice
regularMarketChangePercent
fiftyTwoWeekHighChange
fiftyTwoWeekLowChange
regularMarketDayLow
regularMarketPrice
regularMarketVolume
marketCap
fiftyTwoWeekLowChangePercent
regularMarketDayRange
fiftyTwoWeekHigh
fiftyTwoWeekHighChangePercent
fiftyTwoWeekLow
regularMarketChangePercent
En attendant votre retour, je vous remercie d'avance;
Voici ce que j'ai pu retrouver ... dis moi si tu retrouves les données utiles. Ensuite on peut affiner, ou rester comme cela sachant que tu peux "puiser" ensuite les valeurs voulues.
//mike steelson alias Mikhail Staliyevich
let resultat = [];
function extraireDataFromYahoo(url,chapitre) {
var source = UrlFetchApp.fetch(url).getContentText()
var jsonString = source.match(/(?<=root.App.main = ).*(?=}}}})/g) + '}}}}'
var data = JSON.parse(jsonString)
resultat.push(['niv','donnée','valeur'])
getAllData(1,eval(chapitre),'')
return resultat
}
function getAllData(niv,obj,id) {
const regex = new RegExp('[^0-9]+');
for (let p in obj) {
var newid = (regex.test(p)) ? id + '.' + p : id + '[' + p + ']';
if (obj[p]!=null){
if (typeof obj[p] != 'object' && typeof obj[p] != 'function'){
resultat.push([niv, newid, obj[p]]);
}
if (typeof obj[p] == 'object') {
if (obj[p].length){
resultat.push([niv, newid, '']);
}else{
resultat.push([niv, newid, '']);
}
niv+=1;
getAllData(niv, obj[p], newid );
niv-=1
}
}
}
}
https://docs.google.com/spreadsheets/d/1_JNsV4rs06Jpvpg0mM7t4NfE-I9sStaC1GCXsU8CPxs/copy
La formule est sur fond jaune, les paramètres au-dessus.
Bonjour,
Je vous remercie avant tout , cela m'aidera pour la récupération du secteur qui restait jusqu'à maintenant inaccessible.
Je vais vous donner quelques précisions sur les choses dont je souhaite récupérer la valeur :
- Dans l'onglet "Sommaire" : Bêta (mensuel sur 5 ans) ; Rapport P/E (sur 12 mois) ; Dividende et rendement à terme ; le Date ex-dividende
- Dans l'onglet "Statistiques" : Rapport de distribution ; Rendement en dividendes moyen sur 5 ans
Je n'ai pas pu retrouver ces valeurs au niveau du fichier d'extraction, cela est-il possible ?
Vous remerciant.
Voici un petit code pour la récupération du secteur sur Yahoo finance :
Function getSectorRate(url) {
var source = UrlFetchApp.fetch(url).getContentText()
var jsonString = source.match(/(?<=root.App.main = ).*(?=}}}})/g) + '}}}}'
var data = JSON.parse(jsonString)
var sectorRate = data.context.dispatcher.stores.QuoteSummaryStore.assetProfile.sector
return sectorRate
}
Cela pourra aider quelqu'un,- Dans l'onglet "Sommaire" : Bêta (mensuel sur 5 ans) ; Rapport P/E (sur 12 mois) ; Dividende et rendement à terme ; le Date ex-dividende
Dans summary, les données se trouvent sous
data.context.dispatcher.stores.QuoteSummaryStore
pas toujours facile avec yahoo finance d'aller à la pêche dans les quelques 15.000 données
j'ai ajouté un onglet dans le fichier
- Dans l'onglet "Statistiques" : Rapport de distribution ; Rendement en dividendes moyen sur 5 ans
Ces valeurs sont sous
data.context.dispatcher.stores.QuoteSummaryStore.summaryDetail
mais elles n'existent pas toujours, j'ai ajouté l'onglet stat3 pour le code AAPL
Voici un petit code pour la récupération du secteur sur Yahoo finance :
Cela pourra aider quelqu'un,Function getSectorRate(url) { var source = UrlFetchApp.fetch(url).getContentText() var jsonString = source.match(/(?<=root.App.main = ).*(?=}}}})/g) + '}}}}' var data = JSON.parse(jsonString) var sectorRate = data.context.dispatcher.stores.QuoteSummaryStore.assetProfile.sector return sectorRate }
si tu as besoin d'une liste précise de données, il vaut mieux faire l'interrogation une seule fois de la source et ensuite les repêcher par un seul script
comme ici
https://docs.google.com/spreadsheets/d/1sTA71PhpxI_QdGKXVAtb0Rc3cmvPLgzvXKXXTmiec7k/edit?usp=sharing
Bonjour,
Merci beaucoup pour les fichiers. J'ai pu trouver les infos manquants.
J'ai juste une dernière questions : comment faites vous pour trouver les liens correspondant au fichier Json?
Je parle de cette arborescense pour les datas : data.context.dispatcher.stores.QuoteSummaryStore.summaryDetail
cordialement,
J'ai juste une dernière questions : comment faites vous pour trouver les liens correspondant au fichier Json?
ce fut un long processus de travail qui aboutit à https://forum.excel-pratique.com/astuces/google-sheets-importer-un-json-152621#p942890 (sous mon autre pseudo)