1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
|
Description: Fix for new ViaggiaTreno endpoints and APIs
Author: Gianfranco Costamagna <locutusofborg@debian.org>
Last-Update: 2022-04-11
Index: qviaggiatreno-2013.7.3/src/download_viaggiatreno.cpp
===================================================================
--- qviaggiatreno-2013.7.3.orig/src/download_viaggiatreno.cpp
+++ qviaggiatreno-2013.7.3/src/download_viaggiatreno.cpp
@@ -48,6 +48,8 @@
// sostituisce <br> con <br/>
temp.replace("<br>", "<br/>");
temp.replace("</strong> <br/> <br/>", "</strong> </p> <br/>");
+ temp.replace("no-cache\">", "no-cache\" />");
+ temp.replace("content=\"-1\">", "content=\"-1\" />");
return temp;
}
@@ -152,7 +154,7 @@
dati = QString("stazione=%1").arg(item->dato("NomeStazione"));
dati.replace(" ", "+");
// request.setUrl(QUrl("http://mobile.viaggiatreno.it/viaggiatreno/mobile/stazione?lang=IT"));
- request.setUrl(QUrl("http://mobile.viaggiatreno.it/vt_pax_internet/mobile/stazione?lang=IT"));
+ request.setUrl(QUrl("http://www.viaggiatreno.it/vt_pax_internet/mobile/stazione?lang=IT"));
request.setRawHeader("Content-type", "application/x-www-form-urlencoded");
request.setOriginatingObject(item);
QNetworkReply *reply = m_nam->post(request, dati.toUtf8());
@@ -169,7 +171,7 @@
dati = QString("codiceStazione=%1").arg(item->dato("CodiceStazione"));
dati.replace(" ", "+");
//request.setUrl(QUrl("http://mobile.viaggiatreno.it/viaggiatreno/mobile/stazione?lang=IT"));
- request.setUrl(QUrl("http://mobile.viaggiatreno.it/vt_pax_internet/mobile/stazione?lang=IT"));
+ request.setUrl(QUrl("http://www.viaggiatreno.it/vt_pax_internet/mobile/stazione?lang=IT"));
request.setRawHeader("Content-type", "application/x-www-form-urlencoded");
request.setOriginatingObject(item);
QNetworkReply *reply = m_nam->post(request, dati.toUtf8());
@@ -185,7 +187,7 @@
str = QString("numeroTreno=%1&tipoRicerca=numero&lang=IT").arg(item->dato("Numero"));
// request.setUrl(QUrl("http://mobile.viaggiatreno.it/viaggiatreno/mobile/numero"));
- request.setUrl(QUrl("http://mobile.viaggiatreno.it/vt_pax_internet/mobile/numero"));
+ request.setUrl(QUrl("http://www.viaggiatreno.it/vt_pax_internet/mobile/numero"));
request.setRawHeader("Content-type", "application/x-www-form-urlencoded");
request.setOriginatingObject(item);
QNetworkReply *reply = m_nam->post(request, str.toUtf8());
@@ -199,10 +201,10 @@
QNetworkRequest request;
QString str;
- str = QString("cbxTreno=%1;").arg(item->dato("Numero"));
- str += QString("%1&tipoRicerca=numero&lang=IT").arg(item->dato("CodiceStazione"));
+ str = QString("numeroTreno=%1&").arg(item->dato("Numero"));
+ str += QString("codLocOrig=%1&tipoRicerca=numero&lang=IT").arg(item->dato("CodiceStazione"));
//request.setUrl(QUrl("http://mobile.viaggiatreno.it/viaggiatreno/mobile/numero"));
- request.setUrl(QUrl("http://mobile.viaggiatreno.it/vt_pax_internet/mobile/numero"));
+ request.setUrl(QUrl("http://www.viaggiatreno.it/vt_pax_internet/mobile/numero"));
request.setRawHeader("Content-type", "application/x-www-form-urlencoded");
request.setOriginatingObject(item);
QNetworkReply *reply = m_nam->post(request, str.toUtf8());
@@ -216,7 +218,7 @@
QNetworkRequest request;
// request.setUrl(QUrl(QString("http://mobile.viaggiatreno.it/viaggiatreno/mobile/scheda?dettaglio=visualizza&numeroTreno=%1&tipoRicerca=numero&lang=IT").arg(item->dato("Numero"))));
- request.setUrl(QUrl(QString("http://mobile.viaggiatreno.it/vt_pax_internet/mobile/scheda?dettaglio=visualizza&numeroTreno=%1&tipoRicerca=numero&lang=IT").arg(item->dato("Numero"))));
+ request.setUrl(QUrl(QString("http://www.viaggiatreno.it/vt_pax_internet/mobile/scheda?dettaglio=visualizza&numeroTreno=%1&tipoRicerca=numero&lang=IT").arg(item->dato("Numero"))));
request.setOriginatingObject(item);
QNetworkReply *reply = m_nam->get(request);
connect(reply, SIGNAL(finished()), this, SLOT(downloadEffettuato()));
@@ -230,7 +232,7 @@
QNetworkRequest request;
// request.setUrl(QUrl(QString("http://mobile.viaggiatreno.it/viaggiatreno/mobile/scheda?dettaglio=visualizza&numeroTreno=%1&&codLocOrig=%2&tipoRicerca=numero&lang=IT").
- request.setUrl(QUrl(QString("http://mobile.viaggiatreno.it/vt_pax_internet/mobile/scheda?dettaglio=visualizza&numeroTreno=%1&&codLocOrig=%2&tipoRicerca=numero&lang=IT").
+ request.setUrl(QUrl(QString("http://www.viaggiatreno.it/vt_pax_internet/mobile/scheda?dettaglio=visualizza&numeroTreno=%1&codLocOrig=%2&tipoRicerca=numero&lang=IT").
arg(item->dato("Numero")).arg(item->dato("CodiceStazione"))));
request.setOriginatingObject(item);
QNetworkReply *reply = m_nam->get(request);
@@ -278,7 +280,7 @@
//prova a scaricare la pagina di query di un treno di ViaggiaTreno
QNetworkRequest request;
//request.setUrl(QUrl("http://mobile.viaggiatreno.it/viaggiatreno/mobile/"));
- request.setUrl(QUrl("http://mobile.viaggiatreno.it/vt_pax_internet/mobile"));
+ request.setUrl(QUrl("http://www.viaggiatreno.it/vt_pax_internet/mobile"));
QNetworkReply *reply = m_nam->get(request);
// usa un event loop per effettuare una richiesta sincrona
Index: qviaggiatreno-2013.7.3/src/parser_viaggiatreno_stazione.cpp
===================================================================
--- qviaggiatreno-2013.7.3.orig/src/parser_viaggiatreno_stazione.cpp
+++ qviaggiatreno-2013.7.3/src/parser_viaggiatreno_stazione.cpp
@@ -272,8 +272,9 @@
QStringList catNumeroTreno = elementoh2.text().split(" ");
//copia le rispettive stringhe nella variabile che memorizza i dati del treno
- treno.impostaCategoria(catNumeroTreno[0]);
- treno.impostaNumero(catNumeroTreno[1]);
+ //a volte alcune tipologie di treno hanno uno spazio iniziale, es "REG" funziona mentre " FB" e " FR" no.
+ treno.impostaCategoria(catNumeroTreno[catNumeroTreno.size()-2]);
+ treno.impostaNumero(catNumeroTreno[catNumeroTreno.size()-1]);
//ricava dai due elementi "<strong>" nome della stazione di origine/destinazione
//e l'orario teorico di arrivo/partenza
|