input: Write a python function to extract and return all the URLs found on a given webpage using BeautifulSoup.
  ```python
  from urllib.request import urlopen
  from bs4 import BeautifulSoup
  
  def extract_urls(url):
      html = urlopen(url)
      bs = BeautifulSoup(html.read(), 'html.parser')
      links = bs.find_all('a')
      return [link.get('href') for link in links]
  
  # Example test cases
  assert extract_urls('http://example.com/search?query=keyword') == ['http://example.com/page1', 'http://example.com/page2']
  assert extract_urls('http://example.com/no-links') == []
  assert extract_urls('http://example.com/some-other-page') == ['http://example.com/page3', 'http://example.com/page4']
output: def extract_urls(url):
      html = urlopen(url)
      bs = BeautifulSoup(html.read(), 'html.parser')
      links = bs.find_all('a')
      return [link.get('href') for link in links if link.get('href')]