Java 根据关键字抓取google 新闻 网络数据 .*
用户要求统计所提供关键字在网络出现的新闻,下面为一个测试的main方法。
package com.net;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* @{#} NetTools.java Create on Nov 18, 2009 4:55:57 PM
*
* Copyright (c) 2009 by ThinkIT
* @author Jack He ,jackhexl@gmail.com
* @version 1.0
*/
public class NetTools {
private String url = "";// 请求的URL
private String keyword = "";// 搜索的关键字
private StringBuffer strBuffer = new StringBuffer("");
private List newsList=new ArrayList();//新闻数组
public static void main(String [] args){
List list=new ArrayList();
NetTools nt=new NetTools();
try {
list=nt.getNews("", new String[]{"环保局"});
for(int i=0;i<list.size();i++){
System.out.println(list.get(i).toString());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public List getNews(String url,String[] keywords) throws IOException{
if(url.equals("")||null==url)
url="http://news.google.cn/news/search?cf=all&scoring=n&pz=1&cf=all&ned=ccn&hl=zh-CN&q=";
int i=0;
this.url=url;
//关键字
for(;i<keywords.length;i++){
this.keyword+=keywords[i]+" ";
}
this.url+=java.net.URLEncoder.encode(this.keyword,"UTF-8");// 带参数的请求地址
System.out.println("请求地址为:"+this.url);
URL requestUrl=new URL(this.url);
// 打开链接
HttpURLConnection con
相关文档:
线程的创建和启动
java语言已经内置了多线程支持,所有实现Runnable接口的类都可被启动一个新线程,新线程会执行该实例的run()方法,当run()方法执行完毕后,线程就结束了。一旦一个线程执行完毕,这个实例就不能再重新启动,只能重新生成一个新实例,再启动一个新线程。
......
常量
Java中的常量值是用文字串表示的,它区分为不同的类型,如整型常量123,实型常量1.23,字符常量‘a’,布尔常量true、false以及字符串常量"This is a constant string."。与C、C++不同,Java中不能通过#define命令把一个标识符定义为常量,而是用关键字final来实现,如
final double PI=3.14159( 有 ......
先看一段代码
public class Hello{
public static void main(String[] args){
int i = 5 , j = 2;
System.out.println(i+j);
System.out.println(i-j);
& ......
2009年9月出版的。同是《软件开发课堂》系列。本人在本书中编写的章节为:
第12章:多线程
第13章:IO流
第15章:反射
第16章:注解
第19章:网络编程
第20章:项目实例之网络版QQ
图书封面:
购买链接:http://www.china-pub.com/195979&ref=ps ......
java中时间戳和时间字符串之间的转换
获取当前的unix时间戳
new Date().getTime()
System.currentTimeMillis()
返回的是毫秒数,要转换long t = System.currentTimeMillis()/1000;
获取当前年月日以及时分秒
Calendar c = Calendar.getInstance();
c.get(Calendar.YEAR)) c.get(Calendar.YEAR)) c.get(C ......