In [12]:
from SPARQLWrapper import SPARQLWrapper, JSON
import cPickle as pickle
In [3]:
URL_ENDPOINT="http://localhost:82/"
URL_ENDPOINT_=URL_ENDPOINT+"participabr/query"
PREFIX="""PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX ops: <http://purl.org/socialparticipation/ops#>
PREFIX opa: <http://purl.org/socialparticipation/opa#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dc: <http://purl.org/dc/terms/>
PREFIX tsioc: <http://rdfs.org/sioc/types#>
PREFIX sioc: <http://rdfs.org/sioc/ns#>
PREFIX schema: <http://schema.org/>"""
In [19]:
q="""SELECT ?participant
WHERE {
<http://participa.br/> dc:contributor ?participant.
}"""
sparql=SPARQLWrapper(URL_ENDPOINT_)
sparql.setQuery(PREFIX+q)
sparql.setReturnFormat(JSON)
results = sparql.query().convert()
In [20]:
results_=results["results"]["bindings"]
participantes=[i["participant"]["value"] for i in results_]
In [21]:
len(participantes)
Out[21]:
In [22]:
g=pickle.load( open( "pickledir/g.p", "rb" ) )
d=pickle.load( open( "pickledir/d.p", "rb" ) )
bows=pickle.load( open( "pickledir/bows.p", "rb" ) )
In [23]:
len(bows)
Out[23]:
In [24]:
com_rastro=[part for part in participantes if
(part in g.nodes()) or (part in d.nodes()) or (sum(bows[part][1])>0)]
In [25]:
len(com_rastro)
Out[25]:
In [32]:
print("%.2f por cento dos participantes são passíveis de serem recomendados e de receberem recomendacoes personalizadas"%
((len(com_rastro)/float(len(participantes)))*100,))
In [ ]: