Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 32261|Odpověď: 11

[JavaSE] Crawler právě napsaný v Javě má nyní možnost stahovat obrázky (hloubka 1) a bude pokračovat...

[Kopírovat odkaz]
Zveřejněno 03.06.2015 2:38:12 | | | |
Jak název napovídá

crawler.rar (62.53 KB, Počet stažení: 5, Prodejní cena: 2 Zrno MB)




Předchozí:Víte, jaké webové kontejnery asp.net mít? Kromě IIS
Další:deduplikujte data a vraťte sbírku
Zveřejněno 03.06.2015 21:05:36 |
Jednoduchá implementace, která nezávisí na jiných balíčcích

  1. package test;

  2. import java.io.File;
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5. import java.net.MalformedURLException;
  6. import java.net.URL;
  7. import java.util.regex.Matcher;
  8. import java.util.regex.Pattern;

  9. import javax.imageio.ImageIO;

  10. public class Test {
  11.         public static void main(String[] args) {
  12.                 String web="http://www.itsvse.com/";
  13.                 try {
  14.                         URL url=new URL(web);
  15.                         InputStreamReader reader=new InputStreamReader(url.openStream());
  16.                        
  17.                         StringBuilder builder=new StringBuilder();
  18.                         char[] buff=new char[1024];
  19.                         int n;
  20.                         while((n=reader.read(buff))!=-1){
  21.                                 builder.append(buff,0,n);
  22.                         }
  23.                        
  24.                         Pattern pattern=Pattern.compile("<img.*?src="(.*?)(gif|png|jpg)"");
  25.                        
  26.                         Matcher m=pattern.matcher(builder);
  27.                         while (m.find()) {
  28.                                 String u=m.group(1)+m.group(2);
  29.                                 System.out.println("dowing.."+u);
  30.                                 URL img=null;
  31.                                 if(u.startsWith("http")){
  32.                                         img=new URL(u);
  33.                                 }else{
  34.                                         img=new URL(url,u);
  35.                                 }
  36.                                 ImageIO.write(ImageIO.read(img), m.group(2), new File("D:/img/"+System.currentTimeMillis()+"."+m.group(2)));
  37.                                
  38.                         }
  39.                        
  40.                 } catch (MalformedURLException e) {
  41.                         // TODO Auto-generated catch block
  42.                         e.printStackTrace();
  43.                 } catch (IOException e) {
  44.                         // TODO Auto-generated catch block
  45.                         e.printStackTrace();
  46.                 }
  47.         }
  48. }
Kopírovat kód
Zveřejněno 04.06.2015 19:19:48 |
Delver_Si Zveřejněno 3. 6. 2015 23:57
Efektivita tvého původního vývoje kódu je příliš nízká, špatná recenze

Nechtěl jsem nic říkat, ale řekl jsi, že rozvoj je neefektivní。。。。。

Program vyžaduje kvalitu a výkon kódu, a nakonec má málo funkcí, špatnou schopnost rozšiřování a špatný výkon


Spusť 10krát za sebou, ignoruj latenci sítě pokaždé, ignoruj lokální uložené pozice a počítej jen čas na analýzu html dokumentů, tvůj program je od toho daleko.
Také jsou chyby ve vašem kódu, takže nic neřeknu

Zveřejněno 03.06.2015 13:00:52 |

Eclipse jsem neinstaloval a neprohlížel si ho v poznámkovém bloku, nejdřív jsem si vzal HTML zdrojový kód webové stránky, pak jsem získal hodnotu po src a nakonec jsem to uložil   

Nevím, jestli je to správné  
Zveřejněno 03.06.2015 7:49:23 |
Lze pořídit obrázky ve formátu PNG?
 Pronajímatel| Zveřejněno 03.06.2015 10:17:34 |

Ano, teď jsem příponu nehodnotil, všechny jsou uloženy jako jpg, vlastně png obrázek lze otevřít s příponou jpg a já ji vylepším
Zveřejněno 03.06.2015 12:52:13 |
Nech mě studovat výzkum
 Pronajímatel| Zveřejněno 03.06.2015 12:57:13 |

Jak vypadá studie?
 Pronajímatel| Zveřejněno 03.06.2015 13:05:27 |
Xiao Zhazha Zveřejněno 3. 6. 2015 13:00
Neinstaloval jsem eclipse a nekoukal na něj v notepadu, nejdřív jsem si stáhl zdrojový kód html webové stránky, pak získal hodnotu po src a nakonec uložil hrubý ...

To je pravda
Zveřejněno 03.06.2015 21:12:09 |
microxdd zveřejněno 3. 6. 2015 21:05
Jednoduchá implementace, která nezávisí na jiných balíčcích

To je rytmus, který mě nutí nainstalovat myeclipse!
 Pronajímatel| Zveřejněno 03.06.2015 23:57:27 |
microxdd zveřejněno 3. 6. 2015 21:05
Jednoduchá implementace, která nezávisí na jiných balíčcích

Efektivita tvého původního vývoje kódu je příliš nízká, špatná recenze
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com