[Public] gplusextractor #7arquetipos15 [español]

4
gplusextractor Lv1 #SoLA 15 project Architecture Console CSV extracted Spreadsheet model Code Architecture Console **The programa request G+ Id, and the the number post to analyze.

Transcript of [Public] gplusextractor #7arquetipos15 [español]

Page 1: [Public] gplusextractor #7arquetipos15 [español]

gplusextractor Lv1 #SoLA 15 project

 Architecture Console CSV extracted Spreadsheet model Code 

  

Architecture

  

Console

 **The programa request G+ Id, and the the number post to analyze. 

Page 2: [Public] gplusextractor #7arquetipos15 [español]

CSV extracted  

 The SW create a csv with the traditional data… then we can use also post­dates if the expert share media content, pictures.. whatever... 

Spreadsheet model

 This is the data into an spreadsheet.           

Page 3: [Public] gplusextractor #7arquetipos15 [español]

Implementación  La columna #test representa la posibilidad de análisis sobre un diccionario de palabras para explorar si la persona en su entorno social utiliza las misma para sus #post.  import sys import csv import argparse from oauth2client import client from apiclient import sample_tools 

los típicos imports para utilizar la G+ API y algunos elementos para la transición a csv de los contenidos sociales.  

argparser = argparse.ArgumentParser(add_help=False) argparser.add_argument("-p", "--parameters", nargs='+', type=str, default=["android", "polymer"], help="adding parameters")

Paso por parámetros del conjunto de palabras para comparar en el cuerpo de post. 

people = raw_input('G+ id to analyze?: ') postnumers = int(raw_input('number of posts: ')) service, flags = sample_tools.init( argv, 'plus', 'v1', __doc__, __file__, parents=[argparser], scope='https://www.googleapis.com/auth/plus.me') 

se recibe la información de la cuenta a examinar y el número de post de análisis.  También se arma el servicio de extracción. 

person = service.people().get(userId=people).execute() print 'ID: %s' % person['displayName'] tech = flags.parameters print 'Parameters used: %s' % tech request = service.activities().list(userId=person['id'], collection='public', maxResults='1') myfile = open(people + '.csv', 'wb') 

se obtienen los datos del usuario, se muestran algunos valores  y se solicitan los post.   también se abre el acceso al csv.  

try: writer = csv.writer(myfile) writer.writerow(('id', 'content', 'test', 'replies', 'plusoners', 'resharers')) # Information from activities count = 0 while (count < postnumers): activities_document = request.execute() if 'items' in activities_document: for activity in activities_document['items']: id =activity['id'] content = activity['object']['content'].encode("utf-8") test = any(x in content.split() for x in tech)

Iniciamos escribiendo el esquema del csv.  Luego recorremos en el entorno social recolectando la información. 

Page 4: [Public] gplusextractor #7arquetipos15 [español]

replies =activity['object']['replies']['totalItems'] plusoners =activity['object']['plusoners']['totalItems'] resharers = activity['object']['resharers']['totalItems'] writer.writerow((id, content, test ,replies, plusoners, resharers)) count = count + 1 request = service.activities().list_next(request, activities_document)