import sys from optparse import OptionParser parser = OptionParser() parser.add_option("-r", "--resource_uri", dest="resource_uri", help="Resource URI", metavar="RESOURCE_URI") (options, args) = parser.parse_args() resource_uri = unicode(options.resource_uri, 'utf-8') from csv2rdf.ckan.ckanio import CkanIO io = CkanIO() full_resource_list = io.get_full_resource_list() resource_object = {} for resource in full_resource_list: if(resource['url'] == resource_uri): resource_object = resource if(not resource_object): sys.exit('') from csv2rdf.ckan.package import Package package = Package(resource_object['package_id']) package_name = package.name resource_name = package_name
from csv2rdf.ckan.ckanio import CkanIO ckanio = CkanIO() full_package_list = ckanio.get_full_package_list() print "Loaded package list" #full_package_list = [{"license_id": "some_id"}, # {"license_id": "some_id"}, # {"license_id": "some_id3"}, # {"license_id": "some_id6"}, # {"license_id": "some_id4"}, # {"license_id": "some_id"}, # {"license_id": "some_id2"}] licenses = {} for package in full_package_list: if( hasattr(package, 'license_url')): license_url = package.license_url else: license_url = '' license_by_id = licenses.get(package.license_id, 0) if(license_by_id == 0): count = 1 else: count = license_by_id['count'] + 1 licenses[package.license_id] = {'license_title': package.license_title, 'license': package.license, 'license_url': license_url, 'count': count} print "Processing complete, saving now" import cPickle import datetime
class Tags(object): tags = {} def add(self, tag): if(tag in self.tags.keys()): self.tags[tag] += 1 else: self.tags[tag] = 1 from csv2rdf.ckan.ckanio import CkanIO from csv2rdf.ckan.package import Package ckanio = CkanIO() csv_resource_list = ckanio.get_csv_resource_list() print "Loaded resource list" tags = Tags() list_size = len(csv_resource_list) for num, resource in enumerate(csv_resource_list): print("%d out of %d" %(num, list_size)) package_id = resource['package_id'] package = Package(package_id) for tag in package.tags: tags.add(tag) #print package.extras #print tags.tags