Maison >développement back-end >Golang >Comment écrire du code de robot tronqué dans Golang

Comment écrire du code de robot tronqué dans Golang

angryTom
angryTomoriginal
2020-02-15 09:52:403469parcourir

Comment écrire du code de robot tronqué dans Golang

Que dois-je faire si j'écris un robot avec du code tronqué en Golang ?

Lors de l'écriture d'un programme d'exploration en Golang, vous rencontrerez une page avec le format d'encodage gb2312.

On peut voir sur la page Web que le codage de caractères de la page est gb2312

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

et golang prend en charge le format de codage UTF-8 par défaut, donc le le résultat de l'escalade directe sera des personnages tronqués.

Solution :

Utilisez github.com/axgle/mahonia ce package pour terminer la conversion d'encodage,

1 Exécutez allez chercher. github.com/axgle/mahonia Après la commande de téléchargement de ce package,

github.com\axgle\mahonia
sera produit dans le répertoire

%gopath%/src

2. Comment utiliser le code<.>

1) Importer le package

import "github.com/axgle/mahonia"

2) Fonction de conversion

func ConvertToString(src string, srcCode string, tagCode string) string {
    srcCoder := mahonia.NewDecoder(srcCode)
    srcResult := srcCoder.ConvertString(src)
    tagCoder := mahonia.NewDecoder(tagCode)
    _, cdata, _ := tagCoder.Translate([]byte(srcResult), true)
    result := string(cdata)
    return result
}

3) Appeler cette fonction lorsqu'un encodage de conversion de chaîne est requis


result = ConvertToString(html, "gbk", "utf-8")

Pour en savoir plus connaissances en golang, veuillez suivre la colonne

tutoriel golang sur le site Web PHP chinois.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn