复制代码代码如下:
pacote com.letv.cloud.spider;
importar java.util.hashset;
importar java.util.list;
importar US.Codecraft.WebMagic.Page;
importar US.Codecraft.webmagic.site;
importar US.Codecraft.webmagic.spider;
importar US.Codecraft.WebMagic.Processor.PageProcessor;
classe pública MoviePaperPageProcessor implementa a PageProcessor {
Página do site privado = site.me (). SetretryTimes (3) .SetSleePtime (1000);
site público getSite () {
página de retorno;
}
Processo public void (página da página) {
List <String> links = página.gethtml (). Links (). Regex (
"http://posters.aa.com/poster///d+") .all ();
links = removeduplicate (links);
Page.AddTargetRequests (links);
Page.putfield ("Title", Page.gethtml (). Xpath (
"// div [@id = 'imdbleftSecc']/Center/h1/text ()"). ToString ());
Page.putfield ("imgurl", página.gethtml (). Xpath (
"// div [@id = 'imdbleftSecc']/Center/img/@src"). tostring ());
}
public static void main (string [] args) {
for (int i = 1; i <= 3; i ++) {
Spider.create (new MoviepaperPageProcessor ()). Addurl (
"http://posters.aa.co/poster_page/" + i) .Thread (5) .run ();
}
}
Public Static List Removeduplicate (lista de lista) {
Hashset hs = novo hashset (lista);
list.clear ();
list.addall (hs);
lista de retorno;
}
}