input: Write a python function to crawl a webpage and all linked pages to retrieve and print their text content.
  assert crawler('http://example.com') == None
  assert crawler('http://testsite.com') == None
output: def crawler(url, visited=set()):
      import requests
      from bs4 import BeautifulSoup
      from urllib.parse import urljoin
  
      # Check if the URL is already visited
      if url in visited:
          return
  
      # Add the URL to the visited set
      visited.add(url)
  
      try:
          # Fetch the webpage content
          response = requests.get(url)
          response.raise_for_status()
      except requests.RequestException as e:
          print(f"Failed to fetch {url}: {e}")
          return
  
      # Parse the content with BeautifulSoup
      soup = BeautifulSoup(response.text, 'html.parser')
  
      # Print the text content of the page
      print(soup.get_text())
  
      # Find all links on the page and recursively crawl them
      for link in soup.find_all('a', href=True):
          next_url = urljoin(url, link['href'])
          crawler(next_url, visited)