Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python3
- import psycopg2
- import sys
- if __name__ =="__main__":
- conn = psycopg2.connect('dbname=grf2 user=postgres password=asdwsx host=127.0.0.1')
- #conn = psycopg2.connect('dbname=giraff user=giraff password=g1r@ff host=cobalt.da')
- cur = conn.cursor()
- cur2 = conn.cursor()
- cur.execute("""SELECT id, ftrack_id FROM sites""")
- sites = {}
- for row in cur:
- sites[row[1]] = int(row[0])
- urls = {}
- counter = 0
- cur.execute("""SELECT date, site, url FROM stats.day_page WHERE url_id IS NULL LIMIT 1000000""")
- for row in cur:
- counter +=1
- if (counter % 1000 == 0):
- print(counter)
- if row[1] in sites:
- site_id = sites[row[1]]
- else:
- print(row[1])
- continue
- if not (site_id, row[2]) in urls:
- cur2.execute("""SELECT id FROM urls WHERE site_id = %s AND url = %s""", (site_id, row[2]))
- url_id = cur2.fetchone()
- if not url_id:
- cur2.execute("""INSERT INTO urls(site_id, url) VALUES(%s,%s) RETURNING id""", (site_id, row[2]))
- url_id = cur2.fetchone()
- urls[(site_id, row[2])] = url_id[0]
- cur2.execute("""UPDATE stats.day_page SET url_id = %s WHERE date = %s AND site = %s AND url = %s""", (urls[(site_id, row[2])], row[0], row[1], row[2]))
- conn.commit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement