Du kannst diesen Link auf die Lesezeichen-Symbolleiste ziehen. Danach auf die Seite der Bestellungen (wie von @Ex-Bähnler erklärt) gehen und den Link in der Symbolleiste anklicken. Die Bestellungen im gewünschten Datumsbereich anzeigen und dann auf den Link in der Symbolleiste klicken. Es startet der Download einer CSV-Datei mit den angezeigten Bestellungen: Datum, Typ (Einzelbillett, Tageskarte...), von, nach, Art (einfach oder retour), Reisende, Preis. Die Datei kann dann zum Beispiel mit Excel geöffnet werden. Damit lassen sich dann bequem Summen bilden oder Fahrten zählen. Achtung: Die Datei ist UTF-8 formatiert, Excel erkennt das beim automatischen Öffnen aber nicht und die Umlaute werden falsch dargestellt. Deshalb allenfalls die Datei speichern und manuell als UTF-8 öffnen. Zweites Achtung: Diese Behelfslösung funktioniert nach einer Anpassung der Website möglicherweise nicht mehr. Eine Umsetzung direkt auf den Servern der SBB ist deshalb langfristig die bessere Lösung. Nachtrag: Leider scheint das Forum den Link zu blockieren. Deshalb hier der Code, welchen man als neuen Link in der Symbolleiste speichern kann: javascript:(function(){
let lists = document.getElementsByClassName('mod_bestellungen_dossierzeilen_list');
if(lists == null || lists.length == 0) {
alert('keine Daten gefunden');
return;
}
let text = 'Datum;Typ;von;nach;Art;Reisende;CHF\r\n';
let items = lists[0].getElementsByTagName('li');
for(var i = 0; i < items.length; i++) {
let item = items[i];
let itemData = item.getElementsByClassName('mod_bestellungen_dossierzeilen_item_container');
let d = itemData[2].querySelectorAll(':nth-child(1)')[0].textContent.split(', ')[1];
let cost = itemData[1].firstElementChild.firstChild.textContent.replace(/CHF\u00a0/g, "");
let type = itemData[0].querySelectorAll(':nth-child(1)')[0].innerText.split('\n')[0].split(', ')[0];
let from = itemData[0].querySelectorAll(':nth-child(1)')[0].innerText.split('\n')[0].replace(', ','|').split('|')[1];
let to = itemData[0].querySelectorAll(':nth-child(1)')[0].innerText.split('\n')[2];
let retour = 'einfach';
let rt = itemData[0].querySelectorAll(':nth-child(1)')[0].innerText.split('\n')[1];
if(rt != null && rt.includes('Hin-')) {
retour = 'retour';
}
let persons = itemData[7].querySelectorAll(':nth-child(2)')[0].innerText;
text = text + d + ';' + type + ';' + from + ';' + to + ';' + retour + ';' + persons + ';' + cost + '\r\n';
}
var pom = document.createElement('a');
pom.setAttribute('href', 'data:text/csv;charset=utf-8,' + encodeURIComponent(text));
pom.setAttribute('download', 'reisen.csv');
document.body.appendChild(pom);
pom.click();
document.body.removeChild(pom);
})();
... Mehr anzeigen