Any Function to decode UTF-8 characters available in Domo?

b_rad
b_rad Contributor

Hi,

I have a URL field in my dataset where the data in certain rows have UTF-8 characters instead of normal html characters…

For example….

https://www.theverge.com/2024/11/26/24306815/google-gemini-spotify-extension-rollout-android

is showing up as

https%3A%2F%2Fwww.theverge.com%2F2024%2F11%2F26%2F24306815%2Fgoogle-gemini-spotify-extension-rollout-android

Is there any function in Magic ETL or Beast Mode that would allow us to decode this?

Best Answer

  • Manasi_Panov
    Manasi_Panov Contributor
    Answer ✓

    Hello @b_rad,

    You can achieve this with a simple Python script. Here's the input:

    The script:

    Replace 'Domo Forum Answer 2' with the name of the tile preceding the Python Script tile and 'ID' with the column name in your dataset. The result will be:

    If you found this post helpful, please use 💡/💖/👍/😊 below! If it solved your problem, don't forget to accept the answer.

Answers

  • Manasi_Panov
    Manasi_Panov Contributor
    Answer ✓

    Hello @b_rad,

    You can achieve this with a simple Python script. Here's the input:

    The script:

    Replace 'Domo Forum Answer 2' with the name of the tile preceding the Python Script tile and 'ID' with the column name in your dataset. The result will be:

    If you found this post helpful, please use 💡/💖/👍/😊 below! If it solved your problem, don't forget to accept the answer.

  • b_rad
    b_rad Contributor

    Wow!! That's amazing. Can you please post the actual script as a text? It'll be helpful as I am not a programmer.

  • Hi @b_rad

    Here you go:


    #Import the domomagic package into the script

    from domomagic import *
    import pandas as pd
    from urllib.parse import unquote

    #read data from inputs into a data frame

    input1 = read_dataframe('Domo Forum Answer 2')

    #write your script here

    input1['ID'] = input1['ID'].apply(unquote)

    #write a data frame so it's available to the next action

    write_dataframe(input1)

    If you found this post helpful, please use 💡/💖/👍/😊 below! If it solved your problem, don't forget to accept the answer.