使Web爬虫在本地下载多个网页

时间:2015-04-14 15:39:22

标签: java web-crawler

我希望我的网络抓取工具能够在本地下载所有浏览过的网址。在那一刻,它将下载它所到达的每个站点,但随后覆盖每个访问过的网站中的本地文件。爬虫从www.bbc.co.uk开始,下载该文件,然后当它击中另一个文件时,它会用下一个URL覆盖该文件。如何将它们下载到单个文件中,以便最后有一个集合?我在下面有这个代码,但我不知道从哪里开始。任何建议都会很棒。括号(URL)中的URL是一个字符串,用于操作所有浏览的网页。

         URL url = new URL(URL);
             BufferedWriter writer;
                 try (BufferedReader reader = new BufferedReader
                    (new InputStreamReader(url.openStream()))) {
                            writer = new BufferedWriter
                          (new FileWriter("c:/temp/data.html", true));
                            String line;
                            while ((line = reader.readLine()) != null) {
                                //System.out.println(line);
                            writer.write(line);
                            writer.newLine();
                            }        
                        }
                             writer.close();

1 个答案:

答案 0 :(得分:0)

您需要为文件指定一个唯一的名称。

您可以将它们保存在不同的文件夹中(每个网站的一个根目录)。

或者您可以给他们一个唯一的名称(例如使用计数器)。