title: Generating test data - how to generate a valid address for a given US zipcode?
body: <p>I am creating a tool which depends on addresses. For the purposes of testing, I'd like to create a large number of valid US addresses. I have the <a href="http://download.geonames.org/export/zip/" rel="noreferrer">GeoNames postal code data</a> and I would like to generate some number of real addresses for each of the ~41,000 zip codes in the United States. </p>
  
  <p>I've found sites like <a href="https://www.fakeaddressgenerator.com/US_Real_Random_Address" rel="noreferrer">FakeAddressGenerator</a> and <a href="https://fakena.me/random-real-address/" rel="noreferrer">FakeName</a> which claim to generate random, valid US addresses. How do these sites work? How can I do the same thing without relying on scraping these websites? </p>
  
  <p>Ideally, I'd like to be able to do this in Python; utilizing a web service is fine (it doesn't seem that either FakeAddressGenerator or FakeName provide such a web service). </p>
  
  <p>Thanks!</p>