Esempio n. 1
0
class TextGrid(object):
 	
	def __init__(self, path):
		# pp = pprint.PrettyPrinter(indent=4)
		self.generator = MarkovGenerator(n=1, max=3)

		self.path = path + '/textGrids/'
		#let's get the text from the textGrids, save the annotations in a dict, key=filename
		self.annotations = dict()

		for tgFile in os.listdir(self.path):
			if tgFile[-9:] == '.TextGrid':
				#print tgFile
				tg = tgt.read_textgrid(self.path + tgFile)
				file_annotations = [i for t in tg.tiers for i in t]
				for i in range(len(file_annotations)):
					a1 = file_annotations[i]
					filename = tgFile[:-9]
					self.annotations[a1.text] = (filename, a1)
					if i == len(file_annotations)-1:
						continue
					else:
						a2 = file_annotations[i+1]
						self.feedMarkov(a1,a2)

		# pp.pprint(self.annotations)
		

	def generateText(self, numLines):
		output = list()
		for i in range(numLines):
			 output.append(self.generator.generate())
		return output

	def feedMarkov(self, a1, a2):
		a1.text = a1.text.strip()
		a2.text = a2.text.strip()
		endFirst = a1.text[-1]
		startSecond = a2.text[0]
		first = (endFirst, a1)
		second = (startSecond, a2)
		self.generator.feed(first, second)
Esempio n. 2
0
import random
from markov import MarkovGenerator
from markov_by_char import CharacterMarkovGenerator

# word MarkovGenerator
generator = MarkovGenerator(n=2, max=500)

# character MarkovGenerator
#generator = CharacterMarkovGenerator(n=3, max=100)

for line in open('white-album.txt'):
  line = line.strip()
  generator.feed(line)
  generator.feed(line)
  
for line in open('black-album.txt'):
  line = line.strip()
  generator.feed(line)

for i in range(3):
    print generator.generate()
Esempio n. 3
0
import sys
reload(sys)
sys.setdefaultencoding('utf8')
from markov import MarkovGenerator

file = open("input/" + sys.argv[1])
lines = file.readlines()

generator = MarkovGenerator(n=2, max=3000)
for line in lines:
    generator.feed(line)
text = generator.generate()
print text
Esempio n. 4
0
lines = file.readlines()

nountypes = ["NN", "NNP", "NNS", "NNPS"]
punc = [".",",",";","?","-",]

newlines = ""
for line in lines:
	tokens = nltk.word_tokenize(line)
	tagged = nltk.pos_tag(tokens)
	newline = line
	for idx, tag in enumerate(tagged):
		if any(tag[1] in n for n in nountypes):
			newword = random.choice(prefixes).rstrip().lower() + tag[0]
			newline = newline.replace(tag[0], newword)

	newlines += newline
	newlines += "\n"


generator = MarkovGenerator(n=1, max=1000)
generator.feed(newlines)
genpoem = generator.generate()

print newlines

f = open(text+"-pref.txt", "w")
f.write(newlines)
f.close()
p = open(text+"-markov.txt", "w")
p.write(genpoem)
p.close()
print ''
print opening_line
print ''
print preposition(nOne)
print preposition(nTwo)
print preposition(nThree)
print ''
print generate_opening_line()
print ''
print preposition(nOne)
print random.choice(sailornouns + postnouns)
print random.choice(sailornouns + postnouns)
print random.choice(sailornouns + postnouns)
print preposition(nThree)
print ''
print underground.generate(nOne.split()[0])
print underground.generate(nOne.split()[1])

q = generate_question()
print q + '?'
print ' '
print preposition(nOne)
print preposition(nTwo)
print preposition(nThree)
print ''
print generate_question()
print random.choice(postnouns).strip()
print ''
print generate_question()
print random.choice(postnouns).strip()
print ''