Applescript remove Valor faltante y datos no deseados

0

Creé un script para devolver información de tarjetas de crédito desde un sitio web interno

                            <a href=\"/web/Support.aa/aa/g55erefesfsfsf/4.g.g.5.24.54\">
                                CC<br>Info
                            </a>

                    ", "

                            Visa (9999)

                    ", "

                            Visa (8888)

                    ", "

                            Visa (7777)

                    ", "

                            Visa (666)

                    ", "

                            Alipay

                    ", missing value, missing value, missing value}

Tengo dos problemas con mi script,

  1. No puedo deshacerme del primer enlace que no es un número CC intentó : establezca myRawData en los elementos 2 a -1 de myRawData como cadena pero parece que no funciona.

  2. No logro eliminar todos los valores faltantes.

  3. ¿Puedo eliminar alguna entrada de la lista que contenga "ninguna"?

Aquí está mi script completo

tell application "Google Chrome"
    tell active tab of window 1 to set myRawData to execute javascript "var outPut=[]; var arr=document.getElementsByClassName('sortable fraudScoringTransactionCCSummary');for (var i in arr) {outPut.push(arr[i].innerHTML)};outPut;"
end tell

## set myRawData to items 2 thru -1 of myRawData as string -- not working
set myNewList to {}

repeat with each from 1 to count of items of myRawData
    set itemOnMyList to item each of myRawData
    if itemOnMyList is in myRawData and itemOnMyList is not in myNewList then set end of myNewList to itemOnMyList
end repeat

## not sur
##set myNewList to items 2 thru -1 of myNewList  -- not working

set countHowManyCC to count myNewList


return countHowManyCC
    
pregunta Kevin 11.05.2018 - 10:17

1 respuesta

1

Usando la información de salida devuelta publicada en su OP al tiempo que agrega la llave de apertura que falta y una comilla doble de apertura {" para que se compile como list , la siguiente example AppleScript code filtra el primer elemento de la lista así como los elementos que contienen missing value para devolver un recuento de elementos que representan los datos .

set myRawData to {"<a href=\"/web/Support.aa/aa/g55erefesfsfsf/4.g.g.5.24.54\">
                                CC<br>Info
                            </a>

                    ", "

                            Visa (9999)

                    ", "

                            Visa (8888)

                    ", "

                            Visa (7777)

                    ", "

                            Visa (666)

                    ", "

                            Alipay

                    ", missing value, missing value, missing value}


set myRawData to items 2 thru -1 of myRawData

set myNewList to {}
repeat with i from 1 to count myRawData
    if item i of myRawData does not contain missing value then
        copy item i of myRawData to end of myNewList
    end if
end repeat

return count myNewList

El siguiente ejemplo AppleScript código agrega un segundo filtro para manejar elementos que contiene "ninguno":

set myRawData to items 2 thru -1 of myRawData

set myNewList to {}
repeat with i from 1 to count myRawData
    set thisItem to item i of myRawData
    if thisItem does not contain "none" then
        if thisItem is not missing value then
            copy item i of myRawData to end of myNewList
        end if
    end if
end repeat

return count myNewList

Nota: El ejemplo AppleScript código es solo eso y no emplea ningún manejo de errores y está pensado solo para mostrar una de las muchas formas de realizar una tarea. La responsabilidad recae siempre sobre el Usuario para agregar / usar el manejo de errores según sea necesario / deseado.

    
respondido por el user3439894 11.05.2018 - 13:34

Lea otras preguntas en las etiquetas