Crawler4J é bom em rastrear páginas com resultados codificados. No entanto, o Crawler4J não especifica a codificação para a resposta e a analisa em código iluminado, o que é muito irritante. Depois de encontrar a dor, descobri acidentalmente que uma postagem de blog de longa data pode resolver o problema e modificar a codificação do conteúdo do Page.Load (). Isso me fez sentir muito mais confortável, e as seguintes perguntas são todos os truques e foi resolvido.
A cópia do código é a seguinte:
Public Void LOAD (entidade httpentity) lança exceção {
contentType = null;
Tipo de cabeçalho = entity.getContentType ();
if (type! = null) {
contentType = type.getValue ();
}
contentncoding = null;
Codificação do cabeçalho = entity.getContentEncoding ();
if (codificação! = null) {
contentEncoding = coding.getValue ();
}
Charset charset = contentType.getorDefault (entidade) .getcharset ();
if (charset! = null) {
contentcharset = charset.displayName ();
}outro{
contentcharset = "utf-8";
}
// código -fonte
// contentData = entityutils.tobytearray (entidade);
// código modificado
contentData = entityutils.ToString (entidade, charset.formoname ("gbk")). getBytes ();
}