--- 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)