流式获取html页面
最近遇上比较郁闷的事...
在用流的方式获取html页面的时候,只能够获取到页面的部分源代码,并不完整.
原先是采用用HttpURLConnection + URL 去做的...附上主要代码...
然后转用HttpClient + GetMethod ...同样附上主要代码...
但是两种方法也不行,最奇怪的是有些页面也能全部解析出来,但是有些页面呢就只能够解析一部分,并不完整..
不知道大家有没有过这样的经历...郁闷了好几天了...
在用流的方式获取html页面的时候,只能够获取到页面的部分源代码,并不完整.
原先是采用用HttpURLConnection + URL 去做的...附上主要代码...
HttpURLConnection jconn = null;
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
URL url = new URL(strUrl);
jconn = (HttpURLConnection) url.openConnection();
jconn.setDoOutput(true);
jconn.setDoInput(true);
jconn.connect();
InputStream in = jconn.getInputStream();
byte[] buf = new byte[4096];
int bytesRead = 0;
while ((bytesRead = in.read(buf)) != -1) {
byteArrayOutputStream.write(buf, 0, bytesRead);
}
String strRead = new String(byteArrayOutputStream.toByteArray(), "GBK");
然后转用HttpClient + GetMethod ...同样附上主要代码...
HttpClient client = new HttpClient();
StringBuffer sb = new StringBuffer();
GetMethod getMethod = new GetMethod(strUrl);
int statusCode;
statusCode = client.executeMethod(getMethod);
if (statusCode == HttpStatus.SC_OK) {
BufferedReader bf = new BufferedReader(new InputStreamReader(getMethod.getResponseBodyAsStream(), coder));
String inputLine = null;
while ((inputLine = bf.readLine()) != null) {
sb.append(inputLine).append("\n");
}
bf.close();
但是两种方法也不行,最奇怪的是有些页面也能全部解析出来,但是有些页面呢就只能够解析一部分,并不完整..
不知道大家有没有过这样的经历...郁闷了好几天了...
...全文
相关推荐
基于Nodejs的网页数据采集与处理工具_支持流式处理_多级数据转换_元素选择器_属性提取_HTML内容获取_用户代理设置_代理服务器配置_Ajax动态页面抓取_延迟加载处理_超.zip
基于Nodejs的网页数据采集与处理工具_支持流式处理_多级数据转换_元素选择器_属性提取_HTML内容获取_用户代理设置_代理服务器配置_Ajax动态页面抓取_延迟加载处理_超.zip
基于Coze API自建智能体对话页面:完整源码与实操指南
智能体应用落地不仅依赖模型能力,更需关注工程化交付。通过API集成将对话能力嵌入自有系统,是提升产品交互体验的关键。本文从Web前端调用模型API的基础原理出发,讲解SSE流式响应、会话管理等技术实践,并给出基于Coze开放API构建对话页面的完整方案,适用于智能体开发与前端对接场景,帮助开发者快速实现可运行的聊天界面。
html单页面导出到excel
该代码主要支持html单页面导出到excel中,本人亲测40000条数据,当页面数据完全加载出来后,点击“导出excel”基本是秒下载,大家可以仔细研究一下里面的原理。
Html5响应式自式应网络科技企业网站html前端模板_如何做响应式布局
Html5响应式自式应网络科技企业网站html前端模板
css布局 之 流式布局-原子风格
利用js实现的流式布局,风格模仿 poki game 官网。其官网采用grid布局,但由于太灵活难以掌控,便手敲JS


Web 开发
