Мне нужно узнать среднюю температуру в моем городе по дням, но я могу получить правильный xpath.
Привет всем!Мне нужно узнать среднюю температуру моего города днем.У меня есть сайт, где данные.Мне нужно сделать webscrapping, чтобы получить файл csv или xlsx.я нашел хороший сценарий в интете, но когда я использую, я получаю неправильный xpath.Xpath - с расширением Chrome Webscrapper.веб-сайт: https://www.prevision -meteo.ch / climat / journalier / caen-carpiquet / 2019-01 Используется Xpath: // * [@ id = "climat"] / div [2] / main / div/ div [1] / section / div [2] / div / table / tbody / tr [1] / td [4]
function importAndCleanData() {
// Initialisation
var cacheVal = Math.random(); // génération d'un nombre aléatoire pour contrer le cache du navigateur lors des requêtes IMPORTXML.
var ss = SpreadsheetApp.getActiveSpreadsheet(); // association avec le classeur
var sheet_setup = ss.getSheetByName("setup"); // association avec la feuille "setup"
var sheet_process = ss.getSheetByName("process");
var sheet_data = ss.getSheetByName("data");
// Configuration des requêtes IMPORTXML
// construction de la formule IMPORTXML en concaténant les paramètres de la feuille "setup".
var scrapeData1 = '=IMPORTXML("' + sheet_setup.getRange('C2').getValue() + '?cacheVar=' + cacheVal + '";"'+ sheet_setup.getRange('B2').getValue() + '")';
// Injection de la formule dans la cellule appropriée de la ligne de données de référence dans la feuille "Data"
sheet_process.getRange('B2').setValue(scrapeData1);
// Formatage des données
// cleaning des données pour uniformiser les données
var valB2 = sheet_process.getRange('B2').getValue(); /// on récupère la valeur de la cellule
var valB2_c = valB2.toString().replace(".",","); // on remplace le point "." par une virgule ","
sheet_process.getRange('B2').setValue(valB2_c); // on réinjecte la nouvelle valeur dans la cellule
//// On fait la même chose pour les deux autres requêtes
var scrapeData2 = '=IMPORTXML("' + sheet_setup.getRange('C3').getValue() + '?cacheVar=' + cacheVal + '";"'+ sheet_setup.getRange('B3').getValue() + '")';
sheet_process.getRange('C2').setValue(scrapeData2);
var valC2 = sheet_data.getRange('C2').getValue();
var valC2_c = valC2.toString().replace(".",",");
sheet_process.getRange('C2').setValue(valC2_c);
var scrapeData3 = '=IMPORTXML("' + sheet_setup.getRange('C4').getValue() + '?cacheVar=' + cacheVal + '";"'+ sheet_setup.getRange('B4').getValue() + '")';
sheet_process.getRange('D2').setValue(scrapeData3);
var valD2 = sheet_process.getRange('D2').getValue();
var valD2_c = valD2.toString().replace(".",",");
sheet_process.getRange('D2').setValue(valD2_c);
var now = new Date(); // on met à jour la date dans la premiere colonne de la ligne de données de référence.
heet_process.getRange('A2').setValue(now);
//// Ajout des données formatées
sheet_data.appendRow([now,valB2_c,valC2_c,valD2_c]); // et pour finir, on injecte les données "clean" dans une nouvelle ligne de la feuille "data".
}
Используя лист Google, я ожидаю, что мои данные будут влист "данные" Но я просто получаю ошибку с неправильным Xpath