from math import sqrt from random import random from markov_chain import MarkovChain test_chain = MarkovChain() # file_name = './bin/new_testament.bin' # file_name = './bin/quran.bin' # file_name = './bin/quran_testament.bin' # file_name = './bin/atheists.bin' # file_name = './bin/twitter/news.bin' file_name = './bin/star_trek/PICARD.bin' # file_name = './bin/star_trek/DATA.bin' test_chain.load_training(file_name) print(f'{"_"*16} file_name: "{file_name}" {"_"*16}') print(f'{"_"*16} len(test_chain.tree): {len(test_chain.tree)} {"_"*16}\n') for i in range(11): # print(test_chain.generate_tweet(start_with='amen', append_verse=True), '\n_\n') print( test_chain.generate_tweet(start_with=None, append_tag='#MarkovProcess'), '\n_\n') # that’s
from random import randint from re import split from time import sleep from markov_chain import MarkovChain chain = MarkovChain() # chain.load_training('bin/twitter/coding.bin') chain.load_training('bin/programming.bin') from twitter import OAuth, Twitter from credentials import ACCESS_TOKEN, ACCESS_SECRET, CONSUMER_KEY, CONSUMER_SECRET oauth = OAuth(ACCESS_TOKEN, ACCESS_SECRET, CONSUMER_KEY, CONSUMER_SECRET) twit = Twitter(auth=oauth, retry=1) replies = 0 # query = '(#MarkovChain)' query = '(#markovchain OR #developer OR #algorithm OR #datastructures OR #python OR #java OR #golang OR #datascience OR #coding OR #opensource OR #sourcecode OR #machinelearning OR #programming)' print(f'{"*"*16} _query_: {query} {"*"*16}\n') def reply(tweet): global replies t_words = sorted(split(r'[^a-zA-Z]', tweet['full_text']), key=lambda w: len(w), reverse=True) begin = None for word in t_words: if len(word) > 0 and word.lower() in chain.tree: begin = word.lower() break elif len(word) == 0:
chain = MarkovChain() def speak(text): speech = gTTS(text=text, lang='en', slow=False) speech.save('speech.mp3') os.system('mpg123 -q speech.mp3') print('*' * 22, 'tweeting at random intervals', '*' * 22) num = 28 for i in range(num): print('~i:', i) if i % 7 == 0: category = 'bible' chain.load_training('bin/new_testament.bin') elif i % 7 == 1: # category = 'christians' # chain.load_training('bin/twitter/jesusfreak.bin') category = 'apologists' chain.load_training('bin/twitter/apologists.bin') elif i % 7 == 2: category = 'atheists' # chain.load_training('bin/twitter/atheists.bin') chain.load_training('bin/atheists.bin') elif i % 7 == 3: category = 'quran' chain.load_training('bin/quran.bin') # category = 'allgods' # chain.load_training('bin/twitter/allgods.bin') elif i % 7 == 4: