from requests import get
from pyquery import PyQuery as pq
import json
import datetime



# Profile as source
# print out all info

profile = "fraunhofer.karriere"
url = 'https://www.instagram.com/'+profile
# dt = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
try:
    doc = pq(get(url).text)
    data = (doc('script')[4].text)[21:-1]
    jdat = json.loads(data)['entry_data']['ProfilePage'][0]['graphql']['user']
except:
    doc = pq(get(url).text)
    data = (doc('script')[3].text)[21:-1]
    jdat = json.loads(data)['entry_data']['ProfilePage'][0]['graphql']['user']

for key in jdat.keys():
    if key == "edge_owner_to_timeline_media":
        print("{}\n\n{}\n:".format("###############################",key))
        for i in range(0,12):
            for media_key in jdat[key]['edges'][i]['node'].keys():
                print("{}:\n{}\n".format(media_key,jdat[key]['edges'][i]['node'][media_key]))
        print("###############################\n")
    if key != "edge_owner_to_timeline_media":
        print('{}:\n{}\n'.format(key,jdat[str(key)]))