A chapter-by-chapter tutorial on how to use the PyParsing parser modle for Python.
Tracery is a procedural generation system for generating text, graphics, and more. Think of it like a procgen framework rather than a tool limited to one particular use case. People use it to generate text and dialogue for games, bots (Twitter, et al), artwork, probably music, recipes, insults... Unusual kinds of games have been developed with it, such as rhythm games and dating sims(!). Worth looking into. There is a version for the Twine game development system and a port to Python (https://github.com/aparrish/pytracery), which would make it very useful to us...
An awesome list of public APIs from around the net.
A Markov chain generator in Python that is still maintained. Aims to be very extensible. Can save and restore its models as JSON files. Key methods can be overridden. Can randomly generate sentences, splice models together. Can plug NLP software into it to do more interesting things. Tries very hard to not just regurgitate things from the model; you can tweak this a bit. exocortex bots betafork
An online map that tracks power outages around the world. I don't immediately see an API but that doesn't mean that I can't reverse engineer the AJAX to find one.
A Python module that implements an NLP chatbot. Language agnostic, can be trained to speak any spoken language. Train an instance on a corpus and it will be able to communicate in a conversational manner.
Github repo for an awesome list of Python resources.
A public domain collection of corpora for training AI ML bots. Consists of many YAML files containing key/value data on many different subjects. Each category contains multiple documents about different related subjects. You won't be able to drop these into your code randomly, you'll need to write a fairly simple parser tuned to the document's schema. There are several libraries in different programming languages for efficiently using one or more of these files in your own project.
exocortex bots chatbots Using NLP and statistical analysis to adapt a bot's responses to a conversational partner's calculated emotional state.
Official Mediawiki Python module. Designed to make it easy to interface with a wiki and write tools to manipulate it. Specifically for writing bots.
The default parser and lexer that comes with python. Useful for writing minilanguages and DSLs. Maybe useful if I can figure out how to use it.
NLP training corpuses for the Chatterbot python module. Contains all of the structured text used to teach the text classifier and semantic analysis engines for the module. All user contributed. Encouages contribution by the community. YAML categories The training data consists of actual conversations and fragments thereof in the file.