2 votos

¿Cómo convertir el tipo de URL de AppleScript en una cadena?

En AppleScript, puedo convertir algunas variables (por ejemplo, el portapapeles) en el tipo de URL incorporado:

set theURL to the clipboard as URL

Si mi portapapeles contiene un enlace RTF a https://temochka.com/ , theUrl se le asignará un valor bruto como este (que puede verse en la ventana de respuestas del editor script):

«data url 68747470733A2F2F74656D6F63686B612E636F6D»

Esta última parte ( 68747470733A2F2F74656D6F63686B612E636F6D ) es una cadena codificada en hexadecimal que puede decodificarse como "https://temochka.com". ¿Hay alguna manera de extraer sólo este valor? ¿O tal vez sacar el valor completo de la URL?

1voto

user3439894 Puntos 5883

Si set theURL to the clipboard as URL devoluciones:

«data url 68747470733A2F2F74656D6F63686B612E636F6D»

Entonces, si estás decidido a trabajar con ese clase , primero hay que escribirlo en un archivo temporal archivo y luego leerlo de nuevo, como en lo siguiente ejemplo AppleScript código :

set tmpFilename to "/tmp/theURL.txt"

set theURL to the clipboard as URL

writeToFile(theURL, tmpFilename, true)

set theURL to read tmpFilename

on writeToFile(theData, theFile, overwriteExistingContent)
    try
        set theFile to theFile as string
        if theFile contains "/" then
            set theOpenedFile to open for access theFile with write permission
        else
            set theOpenedFile to open for access file theFile with write permission
        end if
        if overwriteExistingContent is true then set eof of theOpenedFile to 0
        write theData to theOpenedFile starting at eof
        close access theOpenedFile
        return true
    on error
        try
            close access file theFile
        end try
        return false
    end try
end writeToFile 

Notas:

El writeToFile(theText, theFile, overwriteExistingContent) manipulador es una versión ligeramente modificada de manipulador de Lectura y escritura de archivos

El manipulador del enlace Apple se modificó el documento de apoyo para manejar ambos POSIX y HFS+ rutas de los archivos .

Cuando el portapapeles devuelve lo que se muestra aquí, también puede devolver https://temochka.com directamente utilizando, por ejemplo

set theURL to the clipboard as text

enter image description here

-1voto

user180941 Puntos 81

Eso no lo entiendo en absoluto:

{clase:URL, esquema:URL http segura, ruta: "https://temochka.com/", host:{clase:dirección de Internet, forma DNS: "temochka.com", puerto:443, forma decimal con puntos: "159.203.68.102"}}

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X