Revision: 70012
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at October 28, 2015 23:24 by Gauravwagh11
Initial Code
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Chrome Bookmark Exporter, tested with OS X Chrome 7.0.517.41
# Jan Eden <software (a) janeden net>
# based on a Groovy script by Dan Fraser [http://www.capybara.org/~dfraser/archives/355]
# This file is public domain. Python 2.6 or newer required
import json
import datetime
import cgi
import os
import sys
import codecs
from datetime import datetime
import datetime
import time
import psycopg2
hostname = 'xyz'
username = 'abc'
password = '****'
database = 'database_name'
user = os.getlogin()
def doQuery( conn, name, url, ct ) :
cur = conn.cursor()
ct = int(ct)
cur.execute( "INSERT INTO personal_abstracthuman (id,user_id,slug,profile_pic) VALUES(ct, 2, name, null)" );
cur.execute( "INSERT INTO personal_importantlinks (abstracthuman_ptr_id,title,description,related_language,link) VALUES(ct, name, name,null,link)" );
conn.commit()
input_filename = "/home/%s/.config/google-chrome/Default/Bookmarks" % user
#input_filename = "/Users/%s/Library/Application Support/Google/Chrome/Default/Bookmarks" % user
# modify if necessary
output_filename = "/home/%s/Documents/chrome-bookmarks.html" % user
input_file = codecs.open(input_filename, encoding='utf-8')
bookmark_data = json.load(input_file)
output_file = codecs.open(output_filename, 'w', encoding='utf-8')
def print_bookmarks(bookmarks):
for entry in bookmarks:
if entry['type'] == 'folder':
if not len(entry['children']) == 0:
output_file.write(u'<DT><H3 FOLDED ADD_DATE="{0}">{1}</H3>'.format(entry['date_added'], entry['name']))
next_folder = entry['children']
output_file.write(u'<DL><p>')
print_bookmarks(next_folder)
output_file.write(u'</DL><p>')
else:
output_file.write(u'<DT><A DATE_ADDED="{0}" HREF="{1}">{2}</A>'.format(entry['date_added'], cgi.escape(entry['url']), entry['name']))
output_file.write(u'<!DOCTYPE NETSCAPE-Bookmark-file-1>\n<Title>Bookmarks</Title>\n<H1>Bookmarks</H1><DL>\n')
roots = bookmark_data['roots']
#print roots
s = 1
for entry in roots:
try:
print s
#print len(roots[entry]['children'])
ct = 283
#ids = 4
for i in roots[entry]['children']:
#print int(i['date_added'])
s, ms = divmod(int(i['date_added']), 1000)
date_created = '%s.%03d' % (time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(s)), ms)
print i['name']
print i['url']
#print i['url']
output_file.write(u'<DT><H3 FOLDED><a href="{1}" >{0} on date <strong style="color:red;">{2}</strong></a></H3>'.format(i['name'], i['url'], date_created))
output_file.write(u'</DL><p>')
#myConnection = psycopg2.connect( host=hostname, user=username, password=password, dbname=database )
#doQuery( myConnection, i['name'], i['url'], ct, ids )
#myConnection.close()
ct = ct+1
#ids = ids+1
s = s+1
#print roots[entry]['date_added']
#output_file.write(u'<DT><H3 FOLDED ADD_DATE={0}>{1}</H3>'.format(roots[entry]['date_added'], entry))
#print_bookmarks(roots[entry]['children'])
#output_file.write(u'</DL><p>')
except:
pass
output_file.write(u'</DL>')
Initial URL
Initial Description
Display the google chrome bookmarks to html and then save to database.
Initial Title
Google chrome bookmarks to html and then to database
Initial Tags
html, python
Initial Language
Python