-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathminingAbstract.py
53 lines (42 loc) · 1.67 KB
/
miningAbstract.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
from __future__ import absolute_import
from __future__ import division, print_function, unicode_literals
# from sumy.parsers.html import HtmlParser
from sumy.parsers.plaintext import PlaintextParser
from sumy.nlp.tokenizers import Tokenizer
from sumy.summarizers.lsa import LsaSummarizer as Summarizer
from sumy.nlp.stemmers import Stemmer
from sumy.utils import get_stop_words
# from sumy._compat import to_unicode
from tika import parser
import time
tStart = time.time()
def rFile(fPath):
# parser is a Tika package function
parsed = parser.from_file(fPath)
cont = parsed["content"]
meta = parsed["metadata"]
# print (parsed)
return cont
LANGUAGE = "english"
SENTENCES_COUNT = 5
# class Child(PlaintextParser):
# def from_file(cls, file_path, tokenizer):
# with open(file_path, 'rb') as file:
# return cls(file.read(), tokenizer)
#
# def __init__(self, text, tokenizer):
# super(PlaintextParser, self).__init__(tokenizer)
# self._text = to_unicode(text).strip()
if __name__ == "__main__":
# fPath = "/Users/YJccccc/PycharmProjects/tika/data/Untitled.txt"
# parser = PlaintextParser.from_file(fPath, Tokenizer(LANGUAGE))
fPath = "data/USING INFORMATION FROM RENDEZVOUS MISSIONS FOR BEST-CASE APPRAISALS OF IMPACT DAMAGE TO PLANET EARTH .pdf"
str = rFile(fPath)
parser = PlaintextParser.from_string(str, Tokenizer(LANGUAGE))
stemmer = Stemmer(LANGUAGE)
summarizer = Summarizer(stemmer)
summarizer.stop_words = get_stop_words(LANGUAGE)
for sentence in summarizer(parser.document, SENTENCES_COUNT):
print(sentence)
tEnd = time.time()
print("\nTotal time: ", tEnd - tStart, "seconds")