Pārlūkot izejas kodu

Structure de base

olinox 7 gadi atpakaļ
vecāks
revīzija
7f619ffb8e

+ 0 - 17
.project

@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>nestor</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.python.pydev.PyDevBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.python.pydev.pythonNature</nature>
-	</natures>
-</projectDescription>

+ 0 - 8
.pydevproject

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?eclipse-pydev version="1.0"?><pydev_project>
-<pydev_pathproperty name="org.python.pydev.PROJECT_SOURCE_PATH">
-<path>/${PROJECT_DIR_NAME}</path>
-</pydev_pathproperty>
-<pydev_property name="org.python.pydev.PYTHON_PROJECT_VERSION">python 3.0</pydev_property>
-<pydev_property name="org.python.pydev.PYTHON_PROJECT_INTERPRETER">python</pydev_property>
-</pydev_project>

+ 0 - 4
.settings/org.eclipse.core.resources.prefs

@@ -1,4 +0,0 @@
-eclipse.preferences.version=1
-encoding//resources/benchmark.py=UTF-8
-encoding/<project>=UTF-8
-encoding/nestor.py=UTF-8

+ 5 - 1
core/logging.yaml

@@ -13,7 +13,7 @@ formatters:
 handlers:
     console:
         class: logging.StreamHandler
-        level: INFO
+        level: DEBUG
         formatter: message_only
         stream: ext://sys.stdout
     file:
@@ -40,6 +40,10 @@ loggers:
         level: DEBUG
         handlers: [console]
         propagate: no
+    nlp:
+        level: DEBUG
+        handlers: [console]
+        propagate: no
        
 root:
     level: INFO

+ 73 - 4
core/nlp.py

@@ -1,10 +1,72 @@
-import fr_core_news_md
+import en_core_web_lg
+import fr_core_news_md  # @UnusedImport
+from core import logging_
 
 
-nlp = fr_core_news_md.load()
+logger = logging_.getLogger("nlp")
 
+logger.info("Nestor se réveille...")
+# nlp = fr_core_news_md.load()
+nlp = en_core_web_lg.load()
+logger.info("> Ok")
 
-def repond(message):
+def submit(command):
+    logger.info("""Message reçu: "%s" """, command)
+    doc = nlp(command)
+
+    for token in doc:
+        logger.debug("\tJeton: %s", token.text)
+        logger.debug("\t\t* Lemma: %s", token.lemma_)
+        logger.debug("\t\t* Position: %s", token.pos_)
+        logger.debug("\t\t* Tag: %s", token.tag_)
+        logger.debug("\t\t* Dependance: %s", token.dep_)
+        logger.debug("\t\t* Forme: %s", token.shape_)
+        logger.debug("\t\t* Alphanum.: %s", token.is_alpha)
+        logger.debug("\t\t* Stop: %s", token.is_stop)
+
+    for ent in doc.ents:
+        logger.debug("\tEntité: %s", ent.text)
+        logger.debug("\t\t* Start: %s", ent.start_char)
+        logger.debug("\t\t* End: %s", ent.end_char)
+        logger.debug("\t\t* Label: %s", ent.label_)
+
+    unused = []
+    for i in range(len(doc)):
+        token = doc[i]
+        if token.lemma_ == "copy":
+            for j in range(i, len(doc)):
+                token = doc[j]
+                if token.lemma_ in ["from"]:
+                    from_ = doc[j + 1].text
+                if token.lemma_ in ["to", "in"]:
+                    to_ = doc[j + 1].text
+
+            logger.info("Vous voulez copier %s vers %s", from_, to_)
+            break
+
+        if token.lemma_ == "delete":
+            what = doc[i + 1]
+            logger.info("Vous voulez supprimer %s", what)
+            break
+
+        if token.lemma_ == "rename":
+            logger.info("Vous voulez renommer")
+
+        if token.lemma_ == "move":
+            logger.info("Vous voulez déplacer")
+
+        if token.lemma_ == "open":
+            logger.info("Vous voulez ouvrir")
+
+        if token.lemma_ == "new":
+            logger.info("Vous voulez créer")
+
+        logger.debug("Connais pas: %s", token.text)
+        unused.append(token)
+
+
+
+def analyse(message):
     doc = nlp(message)
 
     for token in doc:
@@ -12,4 +74,11 @@ def repond(message):
               token.shape_, token.is_alpha, token.is_stop)
 
     for ent in doc.ents:
-        print(ent.text, ent.start_char, ent.end_char, ent.label_)
+        print(ent.text, ent.start_char, ent.end_char, ent.label_)
+
+
+if __name__ == "__main__":
+
+    submit(r"Copy from .\test\work\a.txt to .\test\work\b.txt")
+    submit(r"Delete .\test\work\a.txt")
+    # submit(r"Rename .\test\work\a.txt in .\test\work\b.txt")

+ 2 - 4
nestor.py

@@ -1,9 +1,7 @@
-from core import logging_
-from core.nlp import nlp
+from core import logging_, nlp
 
 
 logger = logging_.getLogger("nestor")
 
-while True:
-    nlp.repond(input(">"))
+
 

BIN
resources/__pycache__/textblob.cpython-36.pyc