Keyword Extraction in Python_RAKE
<p>I am a novice user and puzzled over the following otherwise simple "loop" problem. I have a local dir with x number of files (about 500 .txt files). I would like to extract the corresponding keywords from each unique file using RAKE for Python. I've reviewed the documentation for RAKE; however, the suggested code in the tutorial gets keywords for a single document. Can someone please explain to me how to loop over an X number of files stored in my local dir. Here's the code from the tutorial and it words really well for a single document. </p>

<pre><code>$git clone https://github.com/zelandiya/RAKE-tutorial

import rake
import operator

rake_object = rake.Rake("SmartStoplist.txt", 5, 3, 4)

sample_file = open("data/docs/fao_test/w2167e.txt", 'r')
text = sample_file.read()
keywords = rake_object.run(text)
print "Keywords:", keywords
</code></pre>

<p>Create a list of filenames you want to process:</p>

<pre><code>filenames = [
    'data/docs/fao_test/w2167e.txt',
    'some/other/folder/filename.txt',
    etc...
]
</code></pre>

<p>If you don't want to hardcode all the names, you can use the <code>glob</code> module to collect filenames by wildcards.</p>

<p>Create a dictionary for storing the results:</p>

<pre><code>results = {}
</code></pre>

<p>Loop through each filename, reading the contents and storing the Rake results in the dictionary, keyed by filename:</p>

<pre><code>for filename in filenames:
    with open(filename, 'r') as fp:
        results[filename] = rake_object.run(fp.read())
</code></pre>

python rake keyword