package eiga;
import java.io.*;
import tool.*;
public class pro {
int s,datanumber;
String[] data=new String[360000];
String[] namex=new String[5000000];
String[] name=new String[500000];
String[] id=new String[5000000];
int[] year=new int[5000000];
int[] month=new int[5000000];
int[] day=new int[5000000];
String[] th=new String[5000000];
String[] v1=new String[5000000];
String[] v2=new String[5000000];
String[] v3=new String[5000000];
String[] time=new String[5000000];
String[] gid=new String[50000];
public static void main(String[] args) {
pro te=new pro();
}
pro(){
readx("data.csv");
for(s=2;s<datanumber+1;s++){
String[] x=data[s].split(",");
name[s]="";
namex[s]=x[5];
if(x.length>6)name[s]=x[5];
year[s]=numx(x[0]);
month[s]=numx(x[1]);
day[s]=numx(x[2]);
th[s]=x[4];
v1[s]=x[6];
v2[s]=x[7];
v3[s]=x[8];
time[s]=x[3];
}
for(s=2;s<datanumber+1;s++){
int p1=name[s].indexOf("(");
if(p1>0)name[s]=name[s].substring(0,p1);
p1=name[s].indexOf("(");
if(p1>0)name[s]=name[s].substring(0,p1);
p1=name[s].indexOf("(");
if(p1>0)name[s]=name[s].substring(0,p1);
p1=name[s].indexOf("[");
if(p1>0)name[s]=name[s].substring(0,p1);
p1=name[s].indexOf("【");
if(p1>0)name[s]=name[s].substring(0,p1);
p1=name[s].indexOf("(");
int p2=name[s].indexOf(")",p1);
if(p1==0)name[s]=name[s].substring(p2+1,name[s].length());
}
int dicnumber=0;
String[] dic=new String[50000];
int sx;
for(s=2;s<datanumber+1;s++){
int h=0;
for(sx=1;sx<dicnumber+1;sx++){
if(name[s].equals(dic[sx]))h=100;
}
if(h<50)dicnumber=dicnumber+1;
if(h<50)dic[dicnumber]=name[s];
}
System.out.println(dicnumber);
for(s=1;s<dicnumber+1;s++){
gid[s]=search(dic[s]);
bing sub5=new bing();
if(gid[s].length()<1){gid[s]=sub5.makedata(dic[s]);
System.out.println(dic[s]+","+gid[s]);
}
}
for(s=2;s<datanumber+1;s++){
id[s]="";
for(sx=1;sx<dicnumber+1;sx++){
if(name[s].equals(dic[sx]))id[s]=gid[sx];
}
}
writexml("ren.txt");
}
void writexml(String file){
int s,sx;
try{
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file)));
for(s=2;s<datanumber+1;s++){
pw.print(year[s]);
pw.print(",");
pw.print(month[s]);
pw.print(",");
pw.print(day[s]);
pw.print(",");
pw.print(time[s]);
pw.print(",");
pw.print(th[s]);
pw.print(",");
pw.print(namex[s]);
pw.print(",");
pw.print(v1[s]);
pw.print(",");
pw.print(v2[s]);
pw.print(",");
pw.print(v3[s]);
pw.print(",");
pw.println(id[s]);
}
System.out.println("ファイルに書きこみました。");
pw.close();
} catch(IOException ep){ System.out.println("入出力エラーです。"); }
}
String search(String word){
String[] name=new String[5000];
String[] id=new String[5000];
makeutf sub6=new makeutf();
String d=sub6.makedata(word);
int datanumber;
String urlx="http://movie.walkerplus.com/search/free_search.cgi?comkind=movie&keyword="+d;
getdata sub7=new getdata();
sub7.makedata(urlx,"UTF-8");
data=sub7.data;
datanumber=sub7.datanumber;
int s;
int sx=0;
for(s=1;s<datanumber+1;s++){
int h=0;
if(data[s].indexOf("com/mv")>-1)h=h+1;
if(data[s].indexOf("</h5>")>-1)h=h+1;
if(h==2) sx=sx+1;
if(h==2)name[sx]=data[s];
}
int number=sx;
for(s=1;s<number+1;s++){
int p1=name[s].indexOf("mv");
int p2=name[s].indexOf("/",p1);
id[s]=name[s].substring(p1,p2);
p1=name[s].indexOf(">",p1);
p2=name[s].indexOf("<",p1+1);
name[s]=name[s].substring(p1+1,p2);
}
String w1="";
if(number>0)w1=id[1];
return w1;
}
int numx(String str){
int nx;
nx=0;
try{
nx=Integer.parseInt(str);
}catch (Exception e) {}
return nx;
}
void readx(String file){
String str;
BufferedReader br;
int s;
s=0;
try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"UTF-8"));
while((str = br.readLine()) != null) {
s=s+1;
data[s]=str;
}
br.close();
} catch (IOException e) {System.out.println(e);}
datanumber=s;
}
}
package eiga;
import tool.*;
public class bing {
int s,datanumber;
String[] data=new String[6000];
String makedata(String ww){
String word="moviewalker"+" "+ww;
makeutf sub6=new makeutf();
String d=sub6.makedata(word);
String urlx="https://www.bing.com/search?q=";
urlx=urlx+d;
getdata sub7=new getdata();
sub7.makedata(urlx,"UTF-8");
data=sub7.data;
datanumber=sub7.datanumber;
String ss="aria-label=\"検索結果";
String str="";
for(s=1;s<datanumber+1;s++){
if(data[s].indexOf(ss)>-1)str=data[s];
}
String[] x=str.split(">");
String d2="movie.walkerplus.com/mv";
String pp="";
for(s=0;s<x.length;s++){
int h=0;
if(x[s].indexOf(d2)>-1)h=h+1;
if(pp.length()==0)h=h+1;
if(h==2)pp=x[s];
}
int p1=pp.indexOf("/mv");
int p2=pp.indexOf("/",p1+1);
if(p1>-1)pp=pp.substring(p1+1,p2);
return pp;
}
}
最終更新:2016年08月14日 07:51