location_utils.py 1.1 KB

12345678910111213141516171819202122232425
  1. from django.contrib.auth.models import User
  2. from requests import get
  3. from .auth_utils import refresh_access_token
  4. from .models import UserModel, Location
  5. def populate_locations():
  6. access_token, _ = refresh_access_token()
  7. user = User.objects.get(username='admin@ercare')
  8. gmb_id = UserModel.objects.get(user=user).gmb_account_id
  9. url = 'https://mybusiness.googleapis.com/v4/accounts/' + gmb_id + '/locations'
  10. headers = {
  11. 'authorization': 'Bearer ' + access_token,
  12. 'content-type': 'application/json'
  13. }
  14. res = get(url, headers=headers).json()
  15. locations = res['locations']
  16. for loc in locations:
  17. # loc['name'] = 'accounts/103266181421855655295/locations/8916258876770296726'
  18. loc_id = loc['name'].split('/')[-1]
  19. loc_name = loc['locationName']
  20. loc_website = loc['websiteUrl']
  21. loc_display = loc['primaryCategory']['displayName']
  22. location = Location.objects.create(location_id=loc_id, location_name=loc_name, website_url=loc_website, display_name=loc_display, owner=user)
  23. location.save()