Estoy tratando de obtener todos los totales de una página web interna y obtener el total.
para obtener un solo resultado escribí esto :
tell application "Google Chrome"
tell tab 1 of window 1 to set orderTotal to execute javascript "document.getElementsByClassName('total')[0].innerHTML;"
end tell
la salida en este ejemplo es :
"1,200.00JPY"
(PD la moneda no siempre es la misma)
para obtener cada valor esto funciona
tell application "Google Chrome"
tell tab 1 of window 1 to set r to execute javascript "var outPut=[]; var arr=document.getElementsByClassName('total');for (var i in arr) {outPut.push(arr[i].innerHTML)};outPut;"
end tell
return r
lo cual me da algo así :
"4,000.00JPY", "5,000.00JPY", "5,000.00JPY", "5,000.00JPY", "5,000.00JPY", "5,000.00JPY", "3,800.00JPY", "5,000.00JPY", "5,000.00JPY", missing value, missing value, missing
Me gustaría limpiar el texto y hacer un total,
Intenté esto para limpiar los valores, pero obviamente no funciona :
set theText to Unicode text
property leftEdge1 : ""
property rightEdge1 : ""
try
set saveTID to text item delimiters
set text item delimiters to leftEdge1
set classValue to text item 2 of r
set text item delimiters to rightEdge1
set singleValue to text item 1 of classValue
set text item delimiters to saveTID
singleValue
end try
y para el total aún no estoy seguro de cómo proceder.
0 votos
1. ¿Cuál es la URL de la página web? 2. La línea que sigue a "que me da algo como esto:" parece estar perdiendo la palabra "valor" ya que termina en "perdido" en lugar de "valor perdido", entonces ¿cuál es? 3. Dado que
r
contiene el contenido de unaarray
, probablemente debería tratarse como unalist
y necesitas recorrer con una declaración derepeat
.