def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return suffixNumberString = almoner.getParameter(arguments, '24', 'round') suffixNumber = int(suffixNumberString) outputAccountTo = almoner.getSuffixedFileName(almoner.getParameter(arguments, 'account.csv', 'account'), suffixNumberString) accountLines = getAccountLines(arguments, suffixNumberString) peerLines = getPeerLines(arguments) peerText = '_beginpeers\n%s_endpeers\n' % almoner.getTextByLines(peerLines) accountText = getPluribusunumText(peerText, accountLines) if almoner.sendOutputTo(outputAccountTo, accountText): print('The account file has been written to:\n%s\n' % outputAccountTo) outputReceiverTo = almoner.getSuffixedFileName(almoner.getParameter(arguments, 'receiver.csv', 'receiver'), suffixNumberString) outputSummaryTo = almoner.getParameter(arguments, 'receiver_summary.txt', 'summary') denominatorSequences = getDenominatorSequencesByAccountLines(accountLines) originalReceiverLines = getReceiverLinesByDenominatorSequences(denominatorSequences) receiverLines = getPackedReceiverLines(denominatorSequences, originalReceiverLines, suffixNumber) receiverText = getPluribusunumText(peerText, receiverLines) if almoner.sendOutputTo(outputReceiverTo, receiverText): print('The receiver file has been written to:\n%s\n' % outputReceiverTo) shaOutputPrefix = almoner.getParameter(arguments, '', 'sha') if len(shaOutputPrefix) != 0: sha256FileName = almoner.getSuffixedFileName(outputReceiverTo, shaOutputPrefix) almoner.writeFileText(sha256FileName, hashlib.sha256(receiverText).hexdigest()) print('The sha256 receiver file has been written to:\n%s\n' % sha256FileName) if almoner.sendOutputTo(outputSummaryTo, getSummaryText(accountLines, originalReceiverLines, peerLines, suffixNumber)): print('The summary file has been written to:\n%s\n' % outputSummaryTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return folderName = almoner.getParameter(arguments, 'widen', 'folder') peerRootAddress = almoner.getParameter(arguments, 'http://galaxies.mygamesonline.org/receiver.csv', 'input') round = int(almoner.getParameter(arguments, '23', 'round')) writeFolder(folderName, peerRootAddress, round)
def writeOutput(arguments): "Write output." if "-h" in arguments or "-help" in arguments: print(__doc__) return folderName = almoner.getParameter(arguments, "widen", "folder") peerRootAddress = almoner.getParameter(arguments, "http://galaxies.mygamesonline.org/receiver.csv", "input") round = int(almoner.getParameter(arguments, "23", "round")) writeFolder(folderName, peerRootAddress, round)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return folderName = almoner.getParameter(arguments, 'widen', 'folder') peerRootAddress = almoner.getParameter( arguments, 'http://galaxies.mygamesonline.org/receiver.csv', 'input') round = int(almoner.getParameter(arguments, '23', 'round')) writeFolder(folderName, peerRootAddress, round)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments or len(arguments) == 0: print(__doc__) return round = int(almoner.getParameter(arguments, '23', 'round')) outputLottoTo = almoner.getParameter(arguments, 'lotto.csv', 'output') differenceDictionary = getDifferenceDictionary(round) lottoText = getLottoText(differenceDictionary) if almoner.sendOutputTo(outputLottoTo, lottoText): print('The lotto file has been written to:\n%s\n' % outputLottoTo)
def getOutput(arguments): 'Get the output according to the arguments.' bitcoinFileName = almoner.getParameter(arguments, 'bitcoinshare.html', 'inputbitcoin') devcoinFileName = almoner.getParameter(arguments, '', 'inputdevcoin') bitcoinOutput = almoner.getAddressText(bitcoinFileName) devcoinOutput = almoner.getAddressText(devcoinFileName) output = bitcoinOutput + devcoinOutput print('Number of bitcoin lines: %s' % len(almoner.getTextLines(bitcoinOutput))) print('Number of devcoin lines: %s' % len(almoner.getTextLines(devcoinOutput))) print('Number of address lines: %s' % len(almoner.getTextLines(output))) return output
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments or len(arguments) == 0: print(__doc__) return round = int(almoner.getParameter(arguments, '23', 'round')) start = int(almoner.getParameter(arguments, '22', 'start')) outputNewbieTo = almoner.getParameter(arguments, 'newbie.csv', 'output') previousRecipentSet = getPreviousRecipentSet(round, start) newbieText = getNewbieText(previousRecipentSet, round) if almoner.sendOutputTo(outputNewbieTo, newbieText): print('The newbie file has been written to:\n%s\n' % outputNewbieTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return start = int(almoner.getParameter(arguments, '22', 'start')) lastRound = int(almoner.getParameter(arguments, '9999999', 'round')) outputHistoryTo = almoner.getParameter(arguments, 'devtome_history.csv', 'output') weightedWordCounts = getWeightedWordCounts(lastRound, start) historyText = getHistoryText(start, weightedWordCounts[: -1]) # because the last count is for a partial round if almoner.sendOutputTo(outputHistoryTo, historyText): print('The history file has been written to:\n%s\n' % outputHistoryTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return random.seed(1) #delete this after test round = int(almoner.getParameter(arguments, '27', 'round')) maximumWriters = int(almoner.getParameter(arguments, '12', 'writers')) outputRaterTo = almoner.getParameter(arguments, 'rater_%s.csv' % round, 'rater') # ratingFileName = almoner.getParameter(arguments, 'rating_%s.csv' % round, 'rating') raterText = getRaterText(maximumWriters, round) if almoner.sendOutputTo(outputRaterTo, raterText): print('The rater file has been written to:\n%s\n' % outputRaterTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments or len(arguments) == 0: print(__doc__) return outputSimilarityTo = almoner.getParameter(arguments, 'similarity.csv', 'output') outputSockpuppetTo = almoner.getParameter(arguments, 'similarity_sockpuppet.csv', 'output') articles = getArticles() similarityText = getSimilarityText(articles) sockpuppetText = getSockpuppetText(articles) if almoner.sendOutputTo(outputSimilarityTo, similarityText): print('The similarity file has been written to:\n%s\n' % outputSimilarityTo) if almoner.sendOutputTo(outputSockpuppetTo, sockpuppetText): print('The sockpuppet file has been written to:\n%s\n' % outputSockpuppetTo)
def writeOutput(arguments): "Write output." if "-h" in arguments or "-help" in arguments or len(arguments) == 0: print(__doc__) return outputSimilarityTo = almoner.getParameter(arguments, "similarity.csv", "output") outputSockpuppetTo = almoner.getParameter(arguments, "similarity_sockpuppet.csv", "output") articles = getArticles() similarityText = getSimilarityText(articles) sockpuppetText = getSockpuppetText(articles) if almoner.sendOutputTo(outputSimilarityTo, similarityText): print("The similarity file has been written to:\n%s\n" % outputSimilarityTo) if almoner.sendOutputTo(outputSockpuppetTo, sockpuppetText): print("The sockpuppet file has been written to:\n%s\n" % outputSockpuppetTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return start = int(almoner.getParameter(arguments, '22', 'start')) lastRound = int(almoner.getParameter(arguments, '9999999', 'round')) outputHistoryTo = almoner.getParameter(arguments, 'devtome_history.csv', 'output') weightedWordCounts = getWeightedWordCounts(lastRound, start) historyText = getHistoryText( start, weightedWordCounts[:-1] ) # because the last count is for a partial round if almoner.sendOutputTo(outputHistoryTo, historyText): print('The history file has been written to:\n%s\n' % outputHistoryTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return round = int(almoner.getParameter(arguments, '27', 'round')) writerFileName = almoner.getParameter(arguments, 'devtome_%s.csv' % (round - 1), 'names') maximumWriters = int(almoner.getParameter(arguments, '12', 'writers')) outputRaterTo = 'rater_%s.txt' % round seedString = almoner.getParameter(arguments, date.today().isoformat(), 'seed') random.seed(seedString[: -1]) writerNames = getWriterNames(writerFileName) raterText = getRaterText(maximumWriters, round, seedString, writerNames) if almoner.sendOutputTo(outputRaterTo, raterText): print('The rater file has been written to:\n%s\n' % outputRaterTo)
def getPeerLines(arguments): 'Get the inner peer text according to the arguments.' peerFileName = almoner.getParameter(arguments, 'peer.csv', 'inputpeer') peerLines = almoner.getTextLines(almoner.getLocationText(peerFileName)) print('Number of peers: %s' % len(peerLines)) print('') return peerLines
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return round = int(almoner.getParameter(arguments, '27', 'round')) ratings = getRatings(round) recipientDictionary = account.getRecipientDictionary(round) earningsText = getEarningsText(ratings, recipientDictionary) ratingText = getRatingText(ratings, round) outputEarningsTo = almoner.getParameter(arguments, 'rating_earnings_%s.csv' % round, 'earnings') outputRatingTo = 'rating_%s.csv' % round if almoner.sendOutputTo(outputEarningsTo, earningsText): print('The rating earnings file has been written to:\n%s\n' % outputEarningsTo) if almoner.sendOutputTo(outputRatingTo, ratingText): print('The rating file has been written to:\n%s\n' % outputRatingTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return round = int(almoner.getParameter(arguments, '23', 'round')) publishersFileName = almoner.getParameter(arguments, 'devtome_%s.csv' % round, 'publishers') lines = almoner.getTextLines(almoner.getFileText(publishersFileName)) outputEarningsTo = almoner.getParameter(arguments, 'marketing_earnings_%s.csv' % round, 'earnings') outputSummaryTo = almoner.getParameter(arguments, 'marketing_summary.txt', 'summary') publishers = getPublishers(lines, round) earningsText = getEarningsText(publishers) if almoner.sendOutputTo(outputEarningsTo, earningsText): print('The marketing earnings bounty file has been written to:\n%s\n' % outputEarningsTo) if almoner.sendOutputTo(outputSummaryTo, getSummaryText(earningsText, publishers, round)): print('The summary file has been written to:\n%s\n' % outputSummaryTo)
def writeOutput(arguments): 'Write output.' if len(arguments) < 2 or '-h' in arguments or '-help' in arguments: print(__doc__) return outputTo = almoner.getParameter(arguments, 'devcoinalmoner.csv', 'output') if almoner.sendOutputTo(outputTo, getOutput(arguments)): print('The devcoin almoner file has been written to:\n%s' % outputTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return round = int(almoner.getParameter(arguments, '34', 'round')) wikiAddress = almoner.getParameter(arguments, 'http://devtome.com', 'wiki') fileNameRoot = wikiAddress if 'http://' in fileNameRoot: fileNameRoot = fileNameRoot[len('http://') :] if fileNameRoot.startswith('www.'): fileNameRoot = fileNameRoot[len('www.') :] if '.' in fileNameRoot: fileNameRoot = fileNameRoot[: fileNameRoot.find('.')] previousDevtomeName = almoner.getParameter(arguments, 'devtome_%s.csv' % (round - 1), 'previous') fileName = almoner.getParameter(arguments, 'writers.txt', 'output') writeWriterFile(fileName, previousDevtomeName, wikiAddress)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return round = int(almoner.getParameter(arguments, '23', 'round')) publishersFileName = almoner.getParameter(arguments, 'devtome_%s.csv' % round, 'publishers') lines = almoner.getTextLines(almoner.getFileText(publishersFileName)) outputEarningsTo = almoner.getParameter(arguments, 'marketing_earnings_%s.csv' % round, 'earnings') outputSummaryTo = almoner.getParameter(arguments, 'marketing_summary.txt', 'summary') workerNameSet = set(account.getRecipientDictionary(round).keys()) publishers = getPublishers(lines, workerNameSet) earningsText = getEarningsText(publishers) if almoner.sendOutputTo(outputEarningsTo, earningsText): print('The marketing earnings bounty file has been written to:\n%s\n' % outputEarningsTo) if almoner.sendOutputTo(outputSummaryTo, getSummaryText(earningsText, publishers, round)): print('The summary file has been written to:\n%s\n' % outputSummaryTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return outputPaymentTo = almoner.getParameter(arguments, 'payment.csv', 'output') remove = almoner.getParameter(arguments, '', 'remove') round = int(almoner.getParameter(arguments, '23', 'round')) total = float(almoner.getParameter(arguments, '0.0', 'total')) paymentDictionary = getPaymentDictionary(round) if remove != '': del paymentDictionary[remove] if total != 0.0: multiplyPayments(total / getTotalPayment(paymentDictionary), paymentDictionary) paymentText = getPaymentText(paymentDictionary, round) if almoner.sendOutputTo(outputPaymentTo, paymentText): print('The payment file has been written to:\n%s\n' % outputPaymentTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return round = int(almoner.getParameter(arguments, '23', 'round')) rootFileName = almoner.getParameter(arguments, 'devtome', 'wiki') currentFileName = almoner.getParameter(arguments, rootFileName + '_%s.csv' % round, 'current') previousFileName = almoner.getParameter(arguments, rootFileName + '_%s.csv' % (round - 1), 'previous') viewFileName = almoner.getParameter(arguments, 'devtome_analytics_%s.csv' % round, 'view') lines = almoner.getTextLines(almoner.getFileText(previousFileName)) titleLine = lines[0] titles = titleLine.split(',') backupFolder = rootFileName + '_articles' viewDictionary = getViewDictionary(viewFileName) authors = getAuthors(backupFolder, lines, titles, viewDictionary) totalTomecount = getTotalTomecount(authors) tomecountText = getTomecountText(authors, totalTomecount) earningsText = getEarningsText(authors) outputSummaryTo = almoner.getParameter(arguments, 'devtome_summary.txt', 'summary') almoner.writeFileText(currentFileName, tomecountText) outputEarningsTo = almoner.getParameter(arguments, 'devtome_earnings_%s.csv' % round, 'earnings') if almoner.sendOutputTo(outputEarningsTo, earningsText): print('The devtome earnings file has been written to:\n%s\n' % outputEarningsTo) if almoner.sendOutputTo(outputSummaryTo, getSummaryText(earningsText, round, totalTomecount)): print('The summary file has been written to:\n%s\n' % outputSummaryTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return round = int(almoner.getParameter(arguments, '34', 'round')) wikiAddress = almoner.getParameter(arguments, 'http://devtome.com', 'wiki') fileNameRoot = wikiAddress if 'http://' in fileNameRoot: fileNameRoot = fileNameRoot[len('http://'):] if fileNameRoot.startswith('www.'): fileNameRoot = fileNameRoot[len('www.'):] if '.' in fileNameRoot: fileNameRoot = fileNameRoot[:fileNameRoot.find('.')] previousDevtomeName = almoner.getParameter(arguments, 'devtome_%s.csv' % (round - 1), 'previous') fileName = almoner.getParameter(arguments, 'writers.txt', 'output') writeWriterFile(fileName, previousDevtomeName, wikiAddress)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return wikiAddress = almoner.getParameter(arguments, 'http://devtome.com', 'wiki') fileNameRoot = wikiAddress if 'http://' in fileNameRoot: fileNameRoot = fileNameRoot[len('http://') :] if '.' in fileNameRoot: fileNameRoot = fileNameRoot[: fileNameRoot.find('.')] archiveType = 'zip' archiveString = almoner.getParameter(arguments, 'zip', 'archive').lower() if archiveString.startswith('t'): archiveType = 'tar' elif archiveString.startswith('b'): archiveType = 'bz2' fileNameRoot = almoner.getParameter(arguments, fileNameRoot, 'output') shouldMakeSnapshot = almoner.getBoolean(arguments, 'false', 'snapshot') writeZipFile(archiveType, fileNameRoot, shouldMakeSnapshot, wikiAddress)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return wikiAddress = almoner.getParameter(arguments, 'http://devtome.com', 'wiki') fileNameRoot = wikiAddress if 'http://' in fileNameRoot: fileNameRoot = fileNameRoot[len('http://'):] if '.' in fileNameRoot: fileNameRoot = fileNameRoot[:fileNameRoot.find('.')] archiveType = 'zip' archiveString = almoner.getParameter(arguments, 'zip', 'archive').lower() if archiveString.startswith('t'): archiveType = 'tar' elif archiveString.startswith('b'): archiveType = 'bz2' fileNameRoot = almoner.getParameter(arguments, fileNameRoot, 'output') shouldMakeSnapshot = almoner.getBoolean(arguments, 'false', 'snapshot') writeZipFile(archiveType, fileNameRoot, shouldMakeSnapshot, wikiAddress)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return round = int(almoner.getParameter(arguments, '23', 'round')) rootFileName = almoner.getParameter(arguments, 'devtome', 'wiki') currentFileName = almoner.getParameter(arguments, rootFileName + '_%s.csv' % round, 'current') previousFileName = almoner.getParameter( arguments, rootFileName + '_%s.csv' % (round - 1), 'previous') lines = almoner.getTextLines(almoner.getFileText(previousFileName)) titleLine = lines[0] titles = titleLine.split(',') backupFolder = rootFileName + '_articles' authors = getAuthors(backupFolder, lines, titles) totalTomecount = getTotalTomecount(authors) tomecountText = getTomecountText(authors, totalTomecount) earningsText = getEarningsText(authors) outputSummaryTo = almoner.getParameter(arguments, 'devtome_summary.txt', 'summary') almoner.writeFileText(currentFileName, tomecountText) outputEarningsTo = almoner.getParameter(arguments, 'devtome_earnings_%s.csv' % round, 'earnings') if almoner.sendOutputTo(outputEarningsTo, earningsText): print('The devtome earnings file has been written to:\n%s\n' % outputEarningsTo) if almoner.sendOutputTo( outputSummaryTo, getSummaryText(earningsText, round, totalTomecount)): print('The summary file has been written to:\n%s\n' % outputSummaryTo)
def getAccountLines(arguments, suffixNumberString): 'Get the lines according to the arguments.' linkFileName = almoner.getParameter(arguments, 'account_location.csv', 'location') linkLines = almoner.getTextLines(almoner.getLocationText(linkFileName))[1:] accountLines = [''] nameSet = set([]) for linkLine in linkLines: linkLineSplit = linkLine.split(',') name = linkLineSplit[0] if 'Devcoin Share List' == name or 'Bitcoin Share List' == name: continue location = linkLineSplit[1] extraLines = [] if '_xx' in location: location = location.replace('_xx', '_' + suffixNumberString) locationText = almoner.getLocationText(location) if '<title>404 Not Found</title>' in locationText: print('Warning, could not download page: %s' % location) else: extraLines = almoner.getTextLines( locationText.replace('coinzen.org/index.php/topic,', 'coinzen.org/index.php/topic=')) else: extraLines = getNameAddressLines(location, nameSet) for extraLineIndex in xrange(len(extraLines) - 1, -1, -1): extraWords = extraLines[extraLineIndex].split(',') if len(extraWords) < 3: print('Warning, less than 3 words in:') print(linkLine) print(extraWords) print('') del extraLines[extraLineIndex] else: secondWord = extraWords[1] if '-' in secondWord or '(' in secondWord or ':' in secondWord: print('Coin address is invalid in:') print(extraWords) del extraLines[extraLineIndex] numberOfShares = len(getReceiverLinesByAccountLines(extraLines)) accountLines.append(name + ': %s Shares' % numberOfShares) accountLines += extraLines accountLines.append('') # ~ addAdministratorBonus(accountLines) return accountLines
def getAccountLines(arguments, suffixNumberString): 'Get the lines according to the arguments.' linkFileName = almoner.getParameter(arguments, 'account_location.csv', 'location') linkLines = almoner.getTextLines(almoner.getLocationText(linkFileName))[1 :] accountLines = [''] nameSet = set([]) for linkLine in linkLines: linkLineSplit = linkLine.split(',') name = linkLineSplit[0] location = linkLineSplit[1] extraLines = [] if '_xx' in location: location = location.replace('_xx', '_' + suffixNumberString) locationText = almoner.getLocationText(location) if '<title>404 Not Found</title>' in locationText: print('Warning, could not download page: %s' % location) else: extraLines = almoner.getTextLines(locationText.replace('coinzen.org/index.php/topic,', 'coinzen.org/index.php/topic=')) else: extraLines = getNameAddressLines(location, nameSet) for extraLineIndex in xrange(len(extraLines) - 1, -1, -1): extraWords = extraLines[extraLineIndex].split(',') if len(extraWords) < 3: print('Warning, less than 3 words in:') print(extraWords) del extraLines[extraLineIndex] else: secondWord = extraWords[1] if '-' in secondWord or '(' in secondWord or ':' in secondWord: print('Coin address is invalid in:') print(extraWords) del extraLines[extraLineIndex] numberOfShares = len(getReceiverLinesByAccountLines(extraLines)) accountLines.append(name + ': %s Shares' % numberOfShares) accountLines += extraLines accountLines.append('') addAdministratorBonus(accountLines) return accountLines
def getAccountLines(arguments, suffixNumberString): 'Get the lines according to the arguments.' linkFileName = almoner.getParameter(arguments, 'account_location.csv', 'location') linkLines = almoner.getTextLines(almoner.getLocationText(linkFileName))[1 :] accountLines = [''] for linkLine in linkLines: linkLineSplit = linkLine.split(',') name = linkLineSplit[0] location = linkLineSplit[1] extraLines = [] if '_xx' in location: location = location.replace('_xx', '_' + suffixNumberString) extraLines = almoner.getTextLines(almoner.getLocationText(location)) else: extraLines = almoner.getNameAddressLines(location) numberOfShares = len(getReceiverLinesByAccountLines(extraLines)) print('Name: %s, Location: %s, Shares: %s' % (name, location, numberOfShares)) accountLines.append(name + ': %s Shares' % numberOfShares) accountLines += extraLines accountLines.append('') addAdministratorBonus(accountLines) print('') return accountLines
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return advertisingRevenue = int(almoner.getParameter(arguments, '0', 'revenue')) round = int(almoner.getParameter(arguments, '23', 'round')) advertisingFileName = almoner.getParameter(arguments, 'devtome', 'wiki') rootFileName = almoner.getParameter(arguments, 'devtome', 'wiki') currentFileName = almoner.getParameter(arguments, rootFileName + '_%s.csv' % round, 'current') previousFileName = almoner.getParameter(arguments, rootFileName + '_%s.csv' % (round - 1), 'previous') ratingFileName = almoner.getParameter(arguments, 'rating_%s.csv' % round, 'rating') viewFileName = almoner.getParameter(arguments, 'devtome_analytics_%s.csv' % round, 'view') categoryDictionary = {} lines = almoner.getTextLines(almoner.getFileText(previousFileName)) titleLine = lines[0] titles = titleLine.split(',') backupFolder = rootFileName + '_articles' ratingDictionary = getRatingDictionary(ratingFileName) viewDictionary = getViewDictionary(viewFileName) authors = getAuthors(backupFolder, categoryDictionary, lines, ratingDictionary, titles, viewDictionary) totalTomecount = getTotalTomecount(advertisingRevenue, authors) tomecountText = getTomecountText(authors, totalTomecount) advertisingRevenueText = getAdvertisingRevenueText(authors) earningsText = getEarningsText(authors) activeWritersText = getActiveWritersText(authors, round) newArticlesText = getNewArticlesText(authors, round) warningsText = getWarningsText(authors) outputSummaryTo = almoner.getParameter(arguments, 'devtome_summary.txt', 'summary') almoner.writeFileText(currentFileName, tomecountText) outputActiveWritersTo = almoner.getParameter(arguments, 'devtome_active_writers.txt', 'writers') outputAdvertisingRevenueTo = almoner.getParameter(arguments, 'devtome_advertising_revenue.csv', 'advertising') outputEarningsTo = almoner.getParameter(arguments, 'devtome_earnings_%s.csv' % round, 'earnings') outputNewArticlesTo = almoner.getParameter(arguments, 'devtome_new_articles.txt', 'articles') outputWarningsTo = almoner.getParameter(arguments, 'devtome_warnings.txt', 'warnings') writeCategoryFiles(categoryDictionary, rootFileName) if advertisingRevenue > 0: if almoner.sendOutputTo(outputAdvertisingRevenueTo, advertisingRevenueText): print('The devtome advertising revenue file has been written to:\n%s\n' % outputAdvertisingRevenueTo) if almoner.sendOutputTo(outputEarningsTo, earningsText): print('The devtome earnings file has been written to:\n%s\n' % outputEarningsTo) if almoner.sendOutputTo(outputNewArticlesTo, newArticlesText): print('The devtome new articles file has been written to:\n%s\n' % outputNewArticlesTo) if almoner.sendOutputTo(outputActiveWritersTo, activeWritersText): print('The devtome active writers file has been written to:\n%s\n' % outputActiveWritersTo) if almoner.sendOutputTo(outputSummaryTo, getSummaryText(earningsText, round, totalTomecount)): print('The summary file has been written to:\n%s\n' % outputSummaryTo) if almoner.sendOutputTo(outputWarningsTo, warningsText): print('The devtome warnings file has been written to:\n%s\n' % outputWarningsTo)
def writeOutput(arguments): 'Write output.' if '-h' in arguments or '-help' in arguments: print(__doc__) return advertisingRevenue = int(almoner.getParameter(arguments, '0', 'revenue')) round = int(almoner.getParameter(arguments, '23', 'round')) advertisingFileName = almoner.getParameter(arguments, 'devtome', 'wiki') rootFileName = almoner.getParameter(arguments, 'devtome', 'wiki') currentFileName = almoner.getParameter(arguments, rootFileName + '_%s.csv' % round, 'current') previousFileName = almoner.getParameter( arguments, rootFileName + '_%s.csv' % (round - 1), 'previous') ratingFileName = almoner.getParameter(arguments, 'rating_%s.csv' % round, 'rating') viewFileName = almoner.getParameter(arguments, 'devtome_analytics_%s.csv' % round, 'view') categoryDictionary = {} lines = almoner.getTextLines(almoner.getFileText(previousFileName)) titleLine = lines[0] titles = titleLine.split(',') backupFolder = rootFileName + '_articles' ratingDictionary = getRatingDictionary(ratingFileName) viewDictionary = getViewDictionary(viewFileName) authors = getAuthors(backupFolder, categoryDictionary, lines, ratingDictionary, titles, viewDictionary) totalTomecount = getTotalTomecount(advertisingRevenue, authors) tomecountText = getTomecountText(authors, totalTomecount) advertisingRevenueText = getAdvertisingRevenueText(authors) earningsText = getEarningsText(authors) activeWritersText = getActiveWritersText(authors, round) newArticlesText = getNewArticlesText(authors, round) warningsText = getWarningsText(authors) outputSummaryTo = almoner.getParameter(arguments, 'devtome_summary.txt', 'summary') almoner.writeFileText(currentFileName, tomecountText) outputActiveWritersTo = almoner.getParameter(arguments, 'devtome_active_writers.txt', 'writers') outputAdvertisingRevenueTo = almoner.getParameter( arguments, 'devtome_advertising_revenue.csv', 'advertising') outputEarningsTo = almoner.getParameter(arguments, 'devtome_earnings_%s.csv' % round, 'earnings') outputNewArticlesTo = almoner.getParameter(arguments, 'devtome_new_articles.txt', 'articles') outputWarningsTo = almoner.getParameter(arguments, 'devtome_warnings.txt', 'warnings') writeCategoryFiles(categoryDictionary, rootFileName) if advertisingRevenue > 0: if almoner.sendOutputTo(outputAdvertisingRevenueTo, advertisingRevenueText): print( 'The devtome advertising revenue file has been written to:\n%s\n' % outputAdvertisingRevenueTo) if almoner.sendOutputTo(outputEarningsTo, earningsText): print('The devtome earnings file has been written to:\n%s\n' % outputEarningsTo) if almoner.sendOutputTo(outputNewArticlesTo, newArticlesText): print('The devtome new articles file has been written to:\n%s\n' % outputNewArticlesTo) if almoner.sendOutputTo(outputActiveWritersTo, activeWritersText): print('The devtome active writers file has been written to:\n%s\n' % outputActiveWritersTo) if almoner.sendOutputTo( outputSummaryTo, getSummaryText(earningsText, round, totalTomecount)): print('The summary file has been written to:\n%s\n' % outputSummaryTo) if almoner.sendOutputTo(outputWarningsTo, warningsText): print('The devtome warnings file has been written to:\n%s\n' % outputWarningsTo)