diff -r 75c469893514 -r dcd4688690ce progs/app2.scala --- a/progs/app2.scala Sun Sep 21 17:40:04 2014 +0100 +++ b/progs/app2.scala Sun Sep 21 23:23:43 2014 +0100 @@ -1,17 +1,16 @@ -val http_pattern = """\"https?://[^\"]*\"""".r +val http_pattern = """"https?://[^"]*"""".r def unquote(s: String) = s.drop(1).dropRight(1) -def get_all_URLs(page: String) : Set[String] = { +def get_all_URLs(page: String) : Set[String] = http_pattern.findAllIn(page).map(unquote).toSet -} def crawl(url: String, n: Int) : Unit = { if (n == 0) () else { println(s"Visiting: $n $url") - for (u <- get_all_URLs(get_page(url))) - crawl(u, n - 1) + for (u <- get_all_URLs(get_page(url))) crawl(u, n - 1) } } +crawl(some_start_URL, 2)