title: multiprocessing does not save data
body: <p>My program essentially scrapes images off of websites that I made up.  I have 3 functions and each of them scrape images off of a specific website by using a parameter.  My program contains the following code.  </p>
  
  <pre><code>import requests
  from bs4 import BeautifulSoup
  from multiprocessing import Process
  
  img1 = []
  img2 = []
  img3 = []
  
  def my_func1(img_search):
      del img1[:]
  
      url1 = "http://www.somewebsite.com/" + str(img_search)
      r1 = requests.get(url1)
      soup1 = BeautifulSoup(r1.content)
      data1 = soup1.find_all("div",{"class":"img"})
  
      for item in data1:
          try:
              img1.append(item.contents[0].find('img')['src'])
          except:
              img1.append("img Unknown")
      return
  
  def my_func2(img_search):
      del img2[:]
  
      url2 = "http://www.somewebsite2.com/" + str(img_search)
      r2 = requests.get(url2)
      soup2 = BeautifulSoup(r2.content)
      data2 = soup2.find_all("div",{"class":"img"})
  
      for item in data2:
          try:
              img2.append(item.contents[0].find('img')['src'])
          except:
              img2.append("img Unknown")
      return
  
  def my_func3(img_search):
      del img3[:]
  
      url3 = "http://www.somewebsite3.com/" + str(img_search)
      r3 = requests.get(url3)
      soup3 = BeautifulSoup(r3.content)
      data3 = soup3.find_all("div",{"class":"img"})
  
      for item in data3:
          try:
              img3.append(item.contents[0].find('img')['src'])
          except:
              img3.append("img Unknown")
      return
  
  my_func1("orange cat")
  my_func2("blue cat")
  my_func3("green cat")
  
  print(*img1, sep='\n')
  print(*img2, sep='\n')
  print(*img3, sep='\n')
  </code></pre>
  
  <p>The scraping works just fine, but it is quite slow so I decided to use multiprocessing to speed it up, and multiprocessing did in fact speed it up.  I essentially replaced the function calls with this</p>
  
  <pre><code>p = Process(target=my_func1, args=("orange cat",))
  p.start()
  p2 = Process(target=my_func2, args=("blue cat",))
  p2.start()
  p3 = Process(target=my_func3, args=("green cat",))
  p3.start()
  
  p.join()
  p2.join()
  p3.join()
  </code></pre>
  
  <p>However, when I print the img1 , img2, and img3 lists they are empty.  How would I fix this?</p>