crawler4j抓取頁(yè)面使用jsoup解析html時(shí)的解決方法
crawler4j對(duì)已有編碼的頁(yè)面抓取效果不錯(cuò),用jsoup解析,很多會(huì)jquery的程序員都可以操作。但是,crawler4j對(duì)response沒(méi)有指定編碼的頁(yè)面,解析成亂碼,很讓人煩惱。在找了苦悶之中,無(wú)意間發(fā)現(xiàn)一年代已久的博文,可以解決問(wèn)題,修改 Page.load() 中的 contentData 編碼即可,這讓我心中頓時(shí)舒坦了很多,接下來(lái)的問(wèn)題都引刃而解了。
public void load(HttpEntity entity) throws Exception {
contentType = null;
Header type = entity.getContentType();
if (type != null) {
contentType = type.getValue();
}
contentEncoding = null;
Header encoding = entity.getContentEncoding();
if (encoding != null) {
contentEncoding = encoding.getValue();
}
Charset charset = ContentType.getOrDefault(entity).getCharset();
if (charset != null) {
contentCharset = charset.displayName();
}else{
contentCharset = "utf-8";
}
//源碼
//contentData = EntityUtils.toByteArray(entity);
//修改后的代碼
contentData = EntityUtils.toString(entity, Charset.forName("gbk")).getBytes();
}
- android Jsoup獲取網(wǎng)站內(nèi)容 android獲取新聞標(biāo)題實(shí)例
- android使用Jsoup 抓取頁(yè)面的數(shù)據(jù)
- Android開(kāi)發(fā)之利用jsoup解析HTML頁(yè)面的方法
- Java實(shí)現(xiàn)爬蟲給App提供數(shù)據(jù)(Jsoup 網(wǎng)絡(luò)爬蟲)
- Android使用Jsoup解析Html表格的方法
- Java中使用開(kāi)源庫(kù)JSoup解析HTML文件實(shí)例
- Jsoup解析HTML實(shí)例及文檔方法詳解
- Jsoup解析html實(shí)現(xiàn)招聘信息查詢功能
相關(guān)文章
JAVA動(dòng)態(tài)代理模式(從現(xiàn)實(shí)生活角度理解代碼原理)
本文主要介紹了JAVA動(dòng)態(tài)代理模式(從現(xiàn)實(shí)生活角度理解代碼原理)的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-03-03
spring Mvc配置xml使ResponseBody返回Json的方法示例
這篇文章主要給大家介紹了關(guān)于spring Mvc配置xml使ResponseBody返回Json的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04
mybatis使用@mapkey獲取的結(jié)果的鍵(key)為null問(wèn)題
這篇文章主要介紹了mybatis使用@mapkey獲取的結(jié)果的鍵(key)為null問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06
基于ClasspathResource路徑問(wèn)題的解決
這篇文章主要介紹了ClasspathResource路徑問(wèn)題的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08

