Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

303
Vistas
Codificación Ruby de la codificación hexadecimal anterior

Tengo una situación en la que un resultado de Nokogiri tiene codificación hex en mis resultados. El problema es que la codificación real del resultado es UTF-8 , pero contiene caracteres hexadecimales:

 Best 100+ Fishing Pictures | Download Free Images on Unsplash https%3A%2F%2Funsplash.com%2Fs%2Fphotos%2Ffishing&rut=d1dd8233a6ad628121fa36d8d5a51be0b6fb0eda75e234d5036bf7b49efcf25b current encoding: UTF-8 Fish Images | Free Vectors, Stock Photos & PSD https%3A%2F%2Fwww.freepik.com%2Ffree%2Dphotos%2Dvectors%2Ffish&rut=f68a290a96893c63f8849bc9e89152d97a632d7a95bbf5d0ca2e939b378fff68 current encoding: UTF-8 How to Use Fish vs. fishes Correctly https%3A%2F%2Fgrammarist.com%2Fusage%2Ffish%2Dfishes%2F&rut=e0897e219c9b0b125a1442b59e36c49753417a1b7812ae9d3ab0bc3179ffe6b5 current encoding: UTF-8

Las direcciones URL están codificadas técnicamente como UTF-8 , pero tienen caracteres hexadecimales. No he encontrado nada que los haya visto como hexadecimales para traducir a UTF-8 , por lo que no sé cómo reconocer esas agrupaciones de caracteres para la traducción. Aparte de escribir un método complejo que podría funcionar, pensé que vería si hay un reconocimiento forzado de la cadena original para luego traducirla usando force_encode o algo por el estilo.

¿Alguien tiene algún consejo sobre cómo lograr esto? Cualquier idea apreciada. Preferiría evitar tener que codificar manualmente estos caracteres en un método.

Actualización : CGI::unescapeHTML(<string>] no funciona:

 irb(main):024:0> a => "https%3A%2F%2Fwww.freepik.com%2Ffree%2Dphotos%2Dvectors%2Ffish&rut=f68a290a96893c63f8849bc9e89152d97a632d7a95bbf5d0ca2e939b378fff68" irb(main):025:0> CGI::unescapeHTML(a) => "https%3A%2F%2Fwww.freepik.com%2Ffree%2Dphotos%2Dvectors%2Ffish&rut=f68a290a96893c63f8849bc9e89152d97a632d7a95bbf5d0ca2e939b378fff68" irb(main):026:0> CGI::unescapeHTML(a) == a => true
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

No proporcionó la fuente de su "codificación del resultado es UTF-8, pero contiene caracteres hexadecimales" en la pregunta original. No creo entender esa pregunta.

En su actualización, usó el método incorrecto. unescapeHTML es para resolver entidades HTML:

 irb(main):010:0> CGI.escapeHTML '<' => "&lt;" irb(main):012:0> CGI.unescapeHTML '&lt;' => "<"

El método que debe usar es para decodificar secuencias de URL:

 irb(main):017:0> encoded_url = "https%3A%2F%2Fwww.freepik.com%2Ffree%2Dphotos%2Dvectors%2Ffish&rut=f68a290a96893c63f8849bc9e89152d97a632d7a95bbf5d0ca2e939b378fff68" => "https%3A%2F%2Fwww.freepik.com%2Ffree%2Dphotos%2Dvectors%2Ffish&rut=f68a290a96893c63f8849bc9e89152d97a632d7a95bbf5d0ca2e939b378fff68" irb(main):018:0> CGI.unescape encoded_url => "https://www.freepik.com/free-photos-vectors/fish&rut=f68a290a96893c63f8849bc9e89152d97a632d7a95bbf5d0ca2e939b378fff68"

Si eso no resuelve su problema real, me complace revisar dado un código fuente más depurable en la pregunta.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda