1. A computer-implemented method of generating a dynamic corpus, the method comprising: (a) generating a plurality (n) of web threads, based upon a corresponding plurality of sets of words dequeued from a word queue of size m words, to obtain web thread resulting URLs, the web thread resulting URLs being returned by search engines in response to receiving the plurality of sets of words as search requests, the web thread resulting URLs corresponding to websites having text that includes the plurality of sets of words; (b) enqueueing the web thread resulting URLs in a URL queue of size o words; (c) generating a plurality (p) of text extraction threads, based upon documents downloaded using URLs dequeued from the URL queue, to obtain text files, the text files providing the dynamic corpus; (d) randomly obtaining new words from the text files; (e) enqueueing the randomly obtained words in the word queue; (f) iteratively repeating the steps (a), (b), (c), (d) and (e) to obtain the dynamic corpus having a predefined size of x first text files, wherein repeating the step (a) includes utilizing the randomly obtained words as additional search requests and receiving additional thread resulting URLs from the search engines in response to the additional search requests, the additional thread resulting URLs corresponding to websites having text that includes the randomly obtained words; (g) adjusting variables n, m, o, p based on a time required to obtain the dynamic corpus with x first text files and based on a predefined refresh rate that specifies an amount of time within which a user desires the dynamic corpus to obtain x new text files so the x first text files are replaced within the dynamic corpus with the x new text files within the amount of time specified by the refresh rate; and iteratively repeating steps (a), (b), (c), (d), (e), (f) and (g).