input: Write a function to scrape photos and captions from a given website and print them out. The function should take a URL as input, make a request to the website, parse the HTML content using BeautifulSoup, and extract the images and their captions from specific div elements. If a caption is not present, the function should print "No caption".
  def scrape_photos_and_captions(url):
      from bs4 import BeautifulSoup
      import requests
  
      # Get the HTML source code
      req = requests.get(url)
      html = req.text
  
      # Parse HTML source and extract photo and caption
      soup = BeautifulSoup(html, features='lxml')
      image_divs = soup.find_all('div', {'class': 'image-gallery__image'})
  
      for image_div in image_divs:
          figure = image_div.find('figure')
          src = figure.find('img')['src']
          caption = figure.find('figcaption')
          print('Photo: ', src)
          if caption:
              print('Caption: ', caption.text)
          else:
              print('No caption')
          print('\n')
  
  assert scrape_photos_and_captions('https://example.com/webpage')
  assert scrape_photos_and_captions('https://another-example.com/webpage')
output: def scrape_photos_and_captions(url):
      from bs4 import BeautifulSoup
      import requests
  
      # Get the HTML source code
      req = requests.get(url)
      html = req.text
  
      # Parse HTML source and extract photo and caption
      soup = BeautifulSoup(html, features='lxml')
      image_divs = soup.find_all('div', {'class': 'image-gallery__image'})
  
      for image_div in image_divs:
          figure = image_div.find('figure')
          src = figure.find('img')['src']
          caption = figure.find('figcaption')
          print('Photo: ', src)
          if caption:
              print('Caption: ', caption.text)
          else:
              print('No caption')
          print('\n')