title: Getting blocked when scraping Amazon (even with headers, proxies, delay)
body: <p>I have a Python code to scrape Amazon product listing. I have set the proxies and headers. I also have <code>sleep()</code> before each crawl. However, I still cannot get the data. The msg I get back is: </p>
  
  <blockquote>
    <p>To discuss automated access to Amazon data please contact api-services-support@amazon.com</p>
  </blockquote>
  
  <p>Portions of my code are:</p>
  
  <pre><code>url = "https://www.amazon.com/Baby-Girls-Shoes/b/ref=sv_sl_fl_7239798011?ie=UTF8&amp;node=7239798011"
  headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0'}
  proxies_list = ["128.199.109.241:8080","113.53.230.195:3128","125.141.200.53:80","125.141.200.14:80","128.199.200.112:138","149.56.123.99:3128","128.199.200.112:80","125.141.200.39:80","134.213.29.202:4444"]
  proxies = {'https': random.choice(proxies_list)}
  time.sleep(0.5 * random.random())
  r = requests.get(url, headers, proxies=proxies)
  page_html = r.content
  print page_html
  </code></pre>
  
  <p>This question is not a duplicate of others available on Stackoverflow, because the others suggest using proxies, headers and delay(sleep), and I have already done all of that that. I am unable to scrape even after doing what they suggest.</p>
  
  <p>The code was working initially, but stopped working after scraping a few pages.</p>