Tengo un documento HTML que tiene javascript, usando re.findall pude obtener los argumentos de la función que necesitaría para convertirlos en un objeto Beautifulsoup.
El problema es que BS no puede reconocer la codificación de la cadena, por lo que tengo un resultado que se ve así:
\x3cdiv class\x3d\x22table\x22\x3e MY DATA \x3c/div\x3eHe probado diferentes soluciones como decodificar, etc. pero aún no hay solución.
EDITAR: cuando paso manualmente la cadena como str = r"\x3cdiv class\x3d\x22table\x22\x3e MY DATA \x3c/div\x3e" Beautifulsoup puede decodificarla, pero una vez extraída de la expresión regular, la cadena permanece codificada.
Necesita escapar de su cadena al pegarla. Puedes analizarlo de manera similar a esto
en js
const res = `\\x3cdiv class\\x3d\\x22table\\x22\\x3e MY DATA \\x3c/div\\x3e` .split('\\x') .slice(1) .map(v => { return String.fromCharCode(parseInt(v.slice(0, 2), 16)) + v.slice(2) }).join('') console.log(res)en pitón
def map_func(v): return chr((int(v[0:2], 16))) + v[2:] txt = "\\x3cdiv class\\x3d\\x22table\\x22\\x3e MY DATA \\x3c/div\\x3e" arr = txt.split('\\x') arr = arr[1:] print(''.join(map(map_func, arr))