def answerFeatures(self): for event, elem in self.postContext: if Utils.getPostTypeId(elem) == "1":#is question self.summary["questions"] += 1 if Utils.getViewCount(elem) > 10000: self.summary["famous"] += 1 if Utils.getAcceptedId(elem): self.summary["accepted"] += 1 else: self.summary["answers"] += 1 Utils.clearElem(elem)
if(len(sys.argv)<2): print 'python name.py badges.xml posts.xml outputDict' sys.exit() epicUserIds = {} epicFile = open(sys.argv[1],'r') context = etree.iterparse(epicFile) epicUserIds = {} epicDetails = {} for event,elem in context: badge = Utils.getBadge(elem) userId = Utils.getUserId(elem) date = Utils.getDate(elem) if(badge=="Epic"): epicUserIds[userId]=date Utils.clearElem(elem) infile = open(sys.argv[2],'r') context = etree.iterparse(infile) numAnswersBefore = 0 numAnswersAfter = 0 for i in epicUserIds: epicDetails[i]={} epicDetails[i]["before"]=0 epicDetails[i]["after"]=0 def BeforeOrAfter(t1,t2): #Return true if epicDate(t1) before t2 or vice-versa return t1<t2 for event,elem in context:
def numEpic(self): for event, elem in self.badgeContext: if Utils.getBadgeName(elem) == "Epic": self.summary["epic"] += 1 Utils.clearElem(elem)
def numUsers(self): for event, elem in self.userContext: self.summary["users"] += 1 Utils.clearElem(elem)