class pro{
int count,page,pagenumber;
String keyword,bun,str;
int p1,p2,p3,p4,p5;
String z1,z2,z3,z4,z5;
int[] x1=new int[100];
int[] x2=new int[100];
int[] x3=new int[100];
int[] x4=new int[100];
int[] x5=new int[100];
String[] catchdata=new String[1000];
String[] article=new String[20];
String[] body=new String[2000];
String[] date=new String[2000];
String[] link=new String[2000];
String[] byline=new String[2000];
String[] title=new String[2000];
int s,articlenumber;
String str1,str2,str4,str3,str5;
public static void main(String [] args) {
pro test=new pro();
}
pro(){
keyword="Junichiro+Koizumi";
count=makecount(keyword);
pagenumber=count/10;
System.out.println(count);
for(page=0;page<30;page++){
catchtime(page,keyword);
catchdata[page]=bun;
}
for(page=0;page<30;page++){
bun=catchdata[page];
makearticle(bun);
for(s=1;s<articlenumber+1;s++){
makeitem(s,article[s]);
}
System.out.println(articlenumber);
}
}
void makeitem(int s,String str){
int p1,p2,p3,p4,p5;
String str1,str2,str4,str3,str5;
String z1,z2,z3,z4,z5;
int h;
str2="\"byline\"";
str3="\"date\"";
str4="\"title\"";
str5="\"url\"";
h=0;
p2=str.indexOf(str2);
if(p2<1)h=100;
p3=str.indexOf(str3);
if(p2<1)p2=p3;
p4=str.indexOf(str4);
p5=str.indexOf(str5);
z1=str.substring(0,p2);
z2="";
if(h<50)z2=str.substring(p2,p3);
z3=str.substring(p3,p4);
z4=str.substring(p4,p5);
z5=str.substring(p5,str.length());
body[s]=json(z1);
if(h>50)byline[s]="";
if(h<50)byline[s]=json(z2);
date[s]=json(z3);
title[s]=json(z4);
link[s]=json(z5);
}
String json(String str){
int p1,p2;
String strx,z1,z2;
p1=str.indexOf(":");
z1=str.substring(p1+1,str.length());
strx="\"";
p1=z1.indexOf(strx);
p2=z1.indexOf(strx,p1+1);
z2=z1.substring(p1+1,p2);
return z2;
}
void makearticle(String str){
String strx;
int s,p1;
int[] x=new int[100];
strx="\"body\"";
s=0;
p1=str.indexOf(strx);
if(p1>-1)s=s+1;
if(p1>-1)x[s]=p1;
while(p1>0){
p1=str.indexOf(strx,p1+1);
if(p1>1)s=s+1;
if(p1>1)x[s]=p1;
}
articlenumber=s;
for(s=1;s<articlenumber;s++){
article[s]=str.substring(x[s],x[s+1]);
}
s=articlenumber;
article[s]=str.substring(x[s],str.length());
}
void catchtime(int page,String keyword){
String urlx;
urlx="http://api.nytimes.com/svc/search/v1/article?format=json&query=";
urlx=urlx+keyword;
urlx=urlx+"&offset=";
urlx=urlx+page;
urlx=urlx+"&api-key=23db986ae143f51f1ea2a744063ae19b:1:59464465";
getdata gd=new getdata();
gd.makedata(urlx);
bun=gd.bun;
}
int makecount(String keyword){
String urlx,bun,str1,str;
int p1,c;
urlx="http://api.nytimes.com/svc/search/v1/article?format=json&query=";
urlx=urlx+keyword;
urlx=urlx+"&api-key=23db986ae143f51f1ea2a744063ae19b:1:59464465";
getdata gd=new getdata();
gd.makedata(urlx);
bun=gd.bun;
str1="\"total\"";
p1=bun.indexOf(str1);
str=bun.substring(p1,bun.length());
String[] x=str.split(":");
str=x[1].substring(0,x[1].length()-1);
str=str.trim();
c=Integer.parseInt(str);
return c;
}
}
最終更新:2011年04月14日 07:46