From 690a480a9dd49bec08cd4af15a9fb155d1259238 Mon Sep 17 00:00:00 2001 From: JianXinyi <1259606552@qq.com> Date: Thu, 7 May 2026 16:07:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=20'w10/CrawlCommand.java'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- w10/CrawlCommand.java | 50 ------------------------------------------- 1 file changed, 50 deletions(-) delete mode 100644 w10/CrawlCommand.java diff --git a/w10/CrawlCommand.java b/w10/CrawlCommand.java deleted file mode 100644 index 4dc0f42..0000000 --- a/w10/CrawlCommand.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.example.datacollect.command; - -import com.example.datacollect.repository.ArticleRepository; -import com.example.datacollect.strategy.CrawlStrategy; -import com.example.datacollect.strategy.StrategyFactory; -import com.example.datacollect.view.ConsoleView; -import org.jsoup.Jsoup; -import org.jsoup.nodes.Document; - -public class CrawlCommand implements Command { - private final ConsoleView view; - private final StrategyFactory strategyFactory; - - public CrawlCommand(ConsoleView view, StrategyFactory strategyFactory) { - this.view = view; - this.strategyFactory = strategyFactory; - } - - @Override - public String getName() { - return "crawl"; - } - - @Override - public void execute(String[] args, ArticleRepository repository) { - if (args.length < 2) { - view.printError("Usage: crawl "); - return; - } - String url = args[1]; - - CrawlStrategy strategy = strategyFactory.getStrategy(url); - if (strategy == null) { - view.printError("No strategy found for: " + url); - return; - } - - try { - view.printInfo("Crawling: " + url); - Document doc = Jsoup.connect(url).get(); - var articles = strategy.parse(url, doc); - for (var article : articles) { - repository.add(article); - } - view.printSuccess("Crawled " + articles.size() + " articles."); - } catch (Exception e) { - view.printError("Failed to crawl: " + e.getMessage()); - } - } -}