浅析JAVA实现网页取内容
来源:互联网 发布:sql select as 中文 编辑:程序博客网 时间:2024/05/16 14:14
摘自http://blog.csdn.net/warlife/archive/2004/09/27/118665.aspx
有很多网站提供从其他网站提取新闻甚至是从向翻译网站取内容
由于手头做的网站需要涉及这个方面的内容,所以最近研究了一下
这里把我的一点小心得写给大家
希望大家讨论共同进步
首先我觉得这种功能的实现其实是依靠对数据包的解析
我的思路是把网站的整个源码先截取下来
然后对包的每一行HTML代码进行分析
找到需要的内容的HTML代码的共性
再提取这些共性代码出来
最后精简掉这些多余的代码得到需要内容
我写了一个粗略的程序来获取金山词霸的翻译
贴上让大家看看
顺便问达人这ENCODE的转化怎么完成
我想好久都没能解决
import java.net.*;
import java.io.*;
public class gethead
{
public static String str = "<tr><td></td><td class=/"explain_attr/">int.</td></tr><tr><td><img width=/"1/" height=/"1/"></td><td class=/"explain_item/">";
public static String end = "</td></tr>";
URL url;
URLConnection uc;
InputStream in;
DataInputStream din;
String get;
StringBuffer sb;
StringBuffer add;
DataInputStream in1;
public gethead()
{
int i=0;
sb = new StringBuffer();
add = new StringBuffer();
add.append("http://cb.kingsoft.com/search?s=");
System.out.println("Input the word you want to get:");
try
{
in1 = new DataInputStream(System.in);
String word = in1.readLine();
add.append(word).append("&lang=utf-8");
url = new URL(add.toString());
uc = url.openConnection();
in = uc.getInputStream();
din = new DataInputStream(in);
while((get = din.readLine())!=null)
{
if((get.indexOf(str))!=-1)
{
i=i+1;
}
if(i!=0)
{
sb.append(get);
}
if(get.indexOf(end)!=1)
{
i=0;
}
}
String oot = sb.toString();
oot = oot.replaceAll(str,"");
oot = oot.replaceAll(end,"");
//oot = java.net.URLEncoder.encode(oot);
oot = new String(oot.getBytes("UTF-8"),"GB2312");
System.out.println(oot);
}catch(IOException e)
{}catch(Exception e)
{}
}
public static void main(String[] args)
{
gethead g = new gethead();
}
}
技术的核心是截取数据流,再进行分析提取,看起来还是比较简单的,但是难点在对HTML的源代码的具体分析和操作上
其实这个技术的应用我个人觉得还是会比较广泛的
在网络的数据流的分析应用上还是比较简单易用的
- 浅析JAVA实现网页取内容
- JAVA取网页内容信息
- JAVA爬取网页内容
- JAVA爬取网页内容
- java爬取网页内容 简单例子
- java爬取网页内容 简单例子
- java 爬取网页页面内容
- java简单爬取网页内容实例
- 爬取网页内容
- java-jsoup自适应爬取网页表格的内容
- Java爬取网页内容的简单例子
- 取网页内容拼分析
- 【Jsoup爬取网页内容】
- python爬取网页内容
- 爬取网页动态内容
- 几种网页爬取的方法与实现(Java)
- Java实现爬取网页数据:PhantomJS+Webdriver
- 读取Nutch爬取的网页内容
- 用分割DMP的方法导入和导出大型ORACLE数据库
- 在request中传递带运算符的表达式字符串
- 欢迎大家留言!^-^
- 在Windows 2000 Server上安装配置MySQL +Tomcat
- Oracle中优化SQL的原则
- 浅析JAVA实现网页取内容
- 如何在C# 中使用WMI 实现远程查询和共享
- 關於引用指針的使用
- 关于winpcap的一些认识
- 物料编码的原则
- 在网页中添加一个音乐对象
- Struts原理与实践(3)
- shou ji 1
- 为TextBox增加隐藏属性,Value属性