Showing
1000 changed files
with
2020 additions
and
40 deletions
Too many changes to show.
To preserve performance only 1000 of 1000+ files are displayed.
1 | <?xml version="1.0" encoding="UTF-8"?> | 1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | <project version="4"> | 2 | <project version="4"> |
3 | <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.8" project-jdk-type="Python SDK" /> | 3 | <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.8" project-jdk-type="Python SDK" /> |
4 | + <component name="PyCharmProfessionalAdvertiser"> | ||
5 | + <option name="shown" value="true" /> | ||
6 | + </component> | ||
4 | </project> | 7 | </project> |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -20,6 +20,10 @@ | ... | @@ -20,6 +20,10 @@ |
20 | </component> | 20 | </component> |
21 | <component name="ChangeListManager"> | 21 | <component name="ChangeListManager"> |
22 | <list default="true" id="b9decb0c-dc9e-4239-bdad-09ea8dd5179d" name="Default Changelist" comment=""> | 22 | <list default="true" id="b9decb0c-dc9e-4239-bdad-09ea8dd5179d" name="Default Changelist" comment=""> |
23 | + <change beforePath="$PROJECT_DIR$/.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" /> | ||
24 | + <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> | ||
25 | + <change beforePath="$PROJECT_DIR$/index.html" beforeDir="false" /> | ||
26 | + <change beforePath="$PROJECT_DIR$/style.css" beforeDir="false" /> | ||
23 | <change beforePath="$PROJECT_DIR$/subtitle.py" beforeDir="false" afterPath="$PROJECT_DIR$/subtitle.py" afterDir="false" /> | 27 | <change beforePath="$PROJECT_DIR$/subtitle.py" beforeDir="false" afterPath="$PROJECT_DIR$/subtitle.py" afterDir="false" /> |
24 | </list> | 28 | </list> |
25 | <option name="SHOW_DIALOG" value="false" /> | 29 | <option name="SHOW_DIALOG" value="false" /> |
... | @@ -31,6 +35,7 @@ | ... | @@ -31,6 +35,7 @@ |
31 | <option name="RECENT_TEMPLATES"> | 35 | <option name="RECENT_TEMPLATES"> |
32 | <list> | 36 | <list> |
33 | <option value="Python Script" /> | 37 | <option value="Python Script" /> |
38 | + <option value="HTML File" /> | ||
34 | </list> | 39 | </list> |
35 | </option> | 40 | </option> |
36 | </component> | 41 | </component> |
... | @@ -45,11 +50,33 @@ | ... | @@ -45,11 +50,33 @@ |
45 | </component> | 50 | </component> |
46 | <component name="PropertiesComponent"> | 51 | <component name="PropertiesComponent"> |
47 | <property name="ASKED_SHARE_PROJECT_CONFIGURATION_FILES" value="true" /> | 52 | <property name="ASKED_SHARE_PROJECT_CONFIGURATION_FILES" value="true" /> |
53 | + <property name="DefaultHtmlFileTemplate" value="HTML File" /> | ||
48 | <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" /> | 54 | <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" /> |
49 | <property name="last_opened_file_path" value="$PROJECT_DIR$" /> | 55 | <property name="last_opened_file_path" value="$PROJECT_DIR$" /> |
50 | <property name="settings.editor.selected.configurable" value="com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable" /> | 56 | <property name="settings.editor.selected.configurable" value="com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable" /> |
51 | </component> | 57 | </component> |
52 | - <component name="RunManager"> | 58 | + <component name="RunManager" selected="Python.app"> |
59 | + <configuration name="app" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true"> | ||
60 | + <module name="src" /> | ||
61 | + <option name="INTERPRETER_OPTIONS" value="" /> | ||
62 | + <option name="PARENT_ENVS" value="true" /> | ||
63 | + <envs> | ||
64 | + <env name="PYTHONUNBUFFERED" value="1" /> | ||
65 | + </envs> | ||
66 | + <option name="SDK_HOME" value="" /> | ||
67 | + <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" /> | ||
68 | + <option name="IS_MODULE_SDK" value="true" /> | ||
69 | + <option name="ADD_CONTENT_ROOTS" value="true" /> | ||
70 | + <option name="ADD_SOURCE_ROOTS" value="true" /> | ||
71 | + <option name="SCRIPT_NAME" value="$PROJECT_DIR$/app.py" /> | ||
72 | + <option name="PARAMETERS" value="" /> | ||
73 | + <option name="SHOW_COMMAND_LINE" value="false" /> | ||
74 | + <option name="EMULATE_TERMINAL" value="false" /> | ||
75 | + <option name="MODULE_MODE" value="false" /> | ||
76 | + <option name="REDIRECT_INPUT" value="false" /> | ||
77 | + <option name="INPUT_FILE" value="" /> | ||
78 | + <method v="2" /> | ||
79 | + </configuration> | ||
53 | <configuration name="subtitle" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true"> | 80 | <configuration name="subtitle" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true"> |
54 | <module name="src" /> | 81 | <module name="src" /> |
55 | <option name="INTERPRETER_OPTIONS" value="" /> | 82 | <option name="INTERPRETER_OPTIONS" value="" /> |
... | @@ -73,6 +100,7 @@ | ... | @@ -73,6 +100,7 @@ |
73 | </configuration> | 100 | </configuration> |
74 | <recent_temporary> | 101 | <recent_temporary> |
75 | <list> | 102 | <list> |
103 | + <item itemvalue="Python.app" /> | ||
76 | <item itemvalue="Python.subtitle" /> | 104 | <item itemvalue="Python.subtitle" /> |
77 | </list> | 105 | </list> |
78 | </recent_temporary> | 106 | </recent_temporary> |
... | @@ -105,25 +133,25 @@ | ... | @@ -105,25 +133,25 @@ |
105 | <screen x="0" y="0" width="1920" height="1040" /> | 133 | <screen x="0" y="0" width="1920" height="1040" /> |
106 | </state> | 134 | </state> |
107 | <state x="740" y="275" key="FileChooserDialogImpl/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1604836455343" /> | 135 | <state x="740" y="275" key="FileChooserDialogImpl/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1604836455343" /> |
108 | - <state width="1899" height="282" key="GridCell.Tab.0.bottom" timestamp="1607071806698"> | 136 | + <state width="1899" height="282" key="GridCell.Tab.0.bottom" timestamp="1607247311462"> |
109 | <screen x="0" y="0" width="1920" height="1040" /> | 137 | <screen x="0" y="0" width="1920" height="1040" /> |
110 | </state> | 138 | </state> |
111 | - <state width="1899" height="282" key="GridCell.Tab.0.bottom/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1607071806698" /> | 139 | + <state width="1899" height="282" key="GridCell.Tab.0.bottom/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1607247311462" /> |
112 | <state width="1899" height="282" key="GridCell.Tab.0.bottom/0.0.1920.1040/1920.0.1920.1040@1920.0.1920.1040" timestamp="1604306110978" /> | 140 | <state width="1899" height="282" key="GridCell.Tab.0.bottom/0.0.1920.1040/1920.0.1920.1040@1920.0.1920.1040" timestamp="1604306110978" /> |
113 | - <state width="1899" height="282" key="GridCell.Tab.0.center" timestamp="1607071806698"> | 141 | + <state width="1899" height="282" key="GridCell.Tab.0.center" timestamp="1607247311461"> |
114 | <screen x="0" y="0" width="1920" height="1040" /> | 142 | <screen x="0" y="0" width="1920" height="1040" /> |
115 | </state> | 143 | </state> |
116 | - <state width="1899" height="282" key="GridCell.Tab.0.center/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1607071806698" /> | 144 | + <state width="1899" height="282" key="GridCell.Tab.0.center/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1607247311461" /> |
117 | <state width="1899" height="282" key="GridCell.Tab.0.center/0.0.1920.1040/1920.0.1920.1040@1920.0.1920.1040" timestamp="1604306110978" /> | 145 | <state width="1899" height="282" key="GridCell.Tab.0.center/0.0.1920.1040/1920.0.1920.1040@1920.0.1920.1040" timestamp="1604306110978" /> |
118 | - <state width="1899" height="282" key="GridCell.Tab.0.left" timestamp="1607071806698"> | 146 | + <state width="1899" height="282" key="GridCell.Tab.0.left" timestamp="1607247311461"> |
119 | <screen x="0" y="0" width="1920" height="1040" /> | 147 | <screen x="0" y="0" width="1920" height="1040" /> |
120 | </state> | 148 | </state> |
121 | - <state width="1899" height="282" key="GridCell.Tab.0.left/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1607071806698" /> | 149 | + <state width="1899" height="282" key="GridCell.Tab.0.left/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1607247311461" /> |
122 | <state width="1899" height="282" key="GridCell.Tab.0.left/0.0.1920.1040/1920.0.1920.1040@1920.0.1920.1040" timestamp="1604306110978" /> | 150 | <state width="1899" height="282" key="GridCell.Tab.0.left/0.0.1920.1040/1920.0.1920.1040@1920.0.1920.1040" timestamp="1604306110978" /> |
123 | - <state width="1899" height="282" key="GridCell.Tab.0.right" timestamp="1607071806698"> | 151 | + <state width="1899" height="282" key="GridCell.Tab.0.right" timestamp="1607247311462"> |
124 | <screen x="0" y="0" width="1920" height="1040" /> | 152 | <screen x="0" y="0" width="1920" height="1040" /> |
125 | </state> | 153 | </state> |
126 | - <state width="1899" height="282" key="GridCell.Tab.0.right/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1607071806698" /> | 154 | + <state width="1899" height="282" key="GridCell.Tab.0.right/0.0.1920.1040/1920.0.1920.1040@0.0.1920.1040" timestamp="1607247311462" /> |
127 | <state width="1899" height="282" key="GridCell.Tab.0.right/0.0.1920.1040/1920.0.1920.1040@1920.0.1920.1040" timestamp="1604306110978" /> | 155 | <state width="1899" height="282" key="GridCell.Tab.0.right/0.0.1920.1040/1920.0.1920.1040@1920.0.1920.1040" timestamp="1604306110978" /> |
128 | <state x="2381" y="164" key="SettingsEditor" timestamp="1604303734485"> | 156 | <state x="2381" y="164" key="SettingsEditor" timestamp="1604303734485"> |
129 | <screen x="1920" y="0" width="1920" height="1040" /> | 157 | <screen x="1920" y="0" width="1920" height="1040" /> | ... | ... |
src/__pycache__/subtitle.cpython-38.pyc
0 → 100644
No preview for this file type
src/app.py
0 → 100644
1 | +from flask import Flask, render_template, request | ||
2 | +import subtitle | ||
3 | + | ||
4 | +app = Flask(__name__) | ||
5 | + | ||
6 | +@app.route('/') | ||
7 | +def home(): | ||
8 | + return render_template("index.html") | ||
9 | + | ||
10 | +@app.route('/result', methods =['POST', 'GET']) | ||
11 | +def result(): | ||
12 | + if request.method == 'POST': | ||
13 | + req = request.form | ||
14 | + res = subtitle.subTitle(req['Url'], int(req['Zip'])) | ||
15 | + return render_template("result.html", result = res) | ||
16 | + | ||
17 | +if __name__ == '__main__': | ||
18 | + app.run(debug=True) | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/style.css
deleted
100644 → 0
... | @@ -11,10 +11,8 @@ def komoran_tokenize(sent): | ... | @@ -11,10 +11,8 @@ def komoran_tokenize(sent): |
11 | words = [w for w in words if ('/NN' in w or '/XR' in w or '/VA' in w or '/VV' in w)] | 11 | words = [w for w in words if ('/NN' in w or '/XR' in w or '/VA' in w or '/VV' in w)] |
12 | return words | 12 | return words |
13 | 13 | ||
14 | -def subtitle(video_url, topk_size): | 14 | +def subTitle(video_url, topk_size): |
15 | #youtube url의 자막 -> xml으로 가져오기 | 15 | #youtube url의 자막 -> xml으로 가져오기 |
16 | - topk_size = 30 | ||
17 | - video_url = 'https://www.youtube.com/watch?v=ecUWKU_v318' | ||
18 | yt = YouTube(video_url) | 16 | yt = YouTube(video_url) |
19 | title = yt.title | 17 | title = yt.title |
20 | description = yt.description | 18 | description = yt.description |
... | @@ -28,7 +26,7 @@ def subtitle(video_url, topk_size): | ... | @@ -28,7 +26,7 @@ def subtitle(video_url, topk_size): |
28 | for child in root.findall("text"): | 26 | for child in root.findall("text"): |
29 | text = child.text.replace('\n', ' ') | 27 | text = child.text.replace('\n', ' ') |
30 | texts.append(text) | 28 | texts.append(text) |
31 | - topk_size = texts.size() * 100 // topk_size | 29 | + topk_size = len(texts) * topk_size // 100 |
32 | 30 | ||
33 | #Komoran을 통해 형태소 단위로 분리 후 태깅 | 31 | #Komoran을 통해 형태소 단위로 분리 후 태깅 |
34 | komoran = Komoran('STABLE') | 32 | komoran = Komoran('STABLE') |
... | @@ -53,14 +51,14 @@ def subtitle(video_url, topk_size): | ... | @@ -53,14 +51,14 @@ def subtitle(video_url, topk_size): |
53 | bias[0] = 5 | 51 | bias[0] = 5 |
54 | keysents = summarizer.summarize(texts, topk=topk_size, bias=bias) | 52 | keysents = summarizer.summarize(texts, topk=topk_size, bias=bias) |
55 | keysents.sort(key=itemgetter(0)) | 53 | keysents.sort(key=itemgetter(0)) |
56 | - first = True | 54 | + First = True |
57 | - ret = '' | 55 | + ret1 = '' |
56 | + ret2 = '' | ||
58 | for _, _, sent in keysents: | 57 | for _, _, sent in keysents: |
59 | sent = sent.replace(''', "'") | 58 | sent = sent.replace(''', "'") |
60 | - ret = ret + sent | 59 | + if First: |
61 | - if first: | 60 | + ret1 = sent |
62 | - ret += '\n' | 61 | + First = False |
63 | - first = False | ||
64 | else: | 62 | else: |
65 | - ret += ' ' | 63 | + ret2 = ret2 + sent + ' ' |
66 | - return ret; | 64 | + return [ret1, ret2] | ... | ... |
1 | 1 | ||
2 | <!DOCTYPE html> | 2 | <!DOCTYPE html> |
3 | -<html lang="ko"> | 3 | +<html lang="en"> |
4 | <head> | 4 | <head> |
5 | <title>유튜브 자막 요약기</title> | 5 | <title>유튜브 자막 요약기</title> |
6 | <meta charset="utf-8" /> | 6 | <meta charset="utf-8" /> |
7 | </head> | 7 | </head> |
8 | - <link rel="stylesheet" href="style.css"> | ||
9 | <body> | 8 | <body> |
10 | - <div id="container"> | 9 | + <div id="container" style="margin-left: 10%;"> |
11 | <h1>유튜브 자막 요약기</h1> | 10 | <h1>유튜브 자막 요약기</h1> |
12 | <div id="subtitle"> | 11 | <div id="subtitle"> |
13 | <div>만든이 : 이규호</div> | 12 | <div>만든이 : 이규호</div> |
14 | <a href="https://github.com/GyuhoLee/youtube_summary" target="_blank">github 바로가기</a> | 13 | <a href="https://github.com/GyuhoLee/youtube_summary" target="_blank">github 바로가기</a> |
15 | <br><br> | 14 | <br><br> |
16 | <div id="desc">요약할 유튜브 영상의 URL과 압축률을 입력해주세요.</div> | 15 | <div id="desc">요약할 유튜브 영상의 URL과 압축률을 입력해주세요.</div> |
17 | - </div><br><br> | 16 | + </div><br> |
18 | - <form action="/" method="post"> | 17 | + <form action="http://127.0.0.1:5000/result" method="POST"> |
19 | <label for="url"> URL :</label> | 18 | <label for="url"> URL :</label> |
20 | - <input type="text" name="url" placeholder="유튜브 url 입력" style="width:40%; height:40px;"/><br><br> | 19 | + <input type="text" name="Url" placeholder="유튜브 url 입력" style="width:40%; height:40px;"/><br><br> |
21 | <label for="zip"> 압축률 :</label> | 20 | <label for="zip"> 압축률 :</label> |
22 | - <input type="text" name="zip" placeholder="압축률(%) 입력" style="width:10%; height:30px;"/> | 21 | + <input type="text" name="Zip" placeholder="압축률(%) 입력" style="width:10%; height:30px;"/> |
23 | <input type="submit" value="요약하기" style="height:30px; width:7%;"></inpout> | 22 | <input type="submit" value="요약하기" style="height:30px; width:7%;"></inpout> |
24 | </form> | 23 | </form> |
25 | </div> | 24 | </div> | ... | ... |
src/templates/result.html
0 → 100644
1 | + | ||
2 | +<!DOCTYPE html> | ||
3 | +<html lang="en"> | ||
4 | + <head> | ||
5 | + <title>유튜브 자막 요약 결과</title> | ||
6 | +<meta charset="utf-8" /> | ||
7 | + </head> | ||
8 | + <body> | ||
9 | + <div id="container" style="margin-left: 10%; margin-right: 20%"> | ||
10 | + <h1>유튜브 자막 요약 결과</h1> | ||
11 | + <br><br> | ||
12 | + <h4>{{ result[0] }}</h4> | ||
13 | + {{ result[1] }} | ||
14 | + | ||
15 | + </div> | ||
16 | + </body> | ||
17 | +</html> |
1 | +pip |
1 | +Copyright 2010 Pallets | ||
2 | + | ||
3 | +Redistribution and use in source and binary forms, with or without | ||
4 | +modification, are permitted provided that the following conditions are | ||
5 | +met: | ||
6 | + | ||
7 | +1. Redistributions of source code must retain the above copyright | ||
8 | + notice, this list of conditions and the following disclaimer. | ||
9 | + | ||
10 | +2. Redistributions in binary form must reproduce the above copyright | ||
11 | + notice, this list of conditions and the following disclaimer in the | ||
12 | + documentation and/or other materials provided with the distribution. | ||
13 | + | ||
14 | +3. Neither the name of the copyright holder nor the names of its | ||
15 | + contributors may be used to endorse or promote products derived from | ||
16 | + this software without specific prior written permission. | ||
17 | + | ||
18 | +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
19 | +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
20 | +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A | ||
21 | +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
22 | +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
23 | +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED | ||
24 | +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | ||
25 | +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | ||
26 | +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | ||
27 | +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
28 | +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
1 | +Metadata-Version: 2.1 | ||
2 | +Name: Flask | ||
3 | +Version: 1.1.2 | ||
4 | +Summary: A simple framework for building complex web applications. | ||
5 | +Home-page: https://palletsprojects.com/p/flask/ | ||
6 | +Author: Armin Ronacher | ||
7 | +Author-email: armin.ronacher@active-4.com | ||
8 | +Maintainer: Pallets | ||
9 | +Maintainer-email: contact@palletsprojects.com | ||
10 | +License: BSD-3-Clause | ||
11 | +Project-URL: Documentation, https://flask.palletsprojects.com/ | ||
12 | +Project-URL: Code, https://github.com/pallets/flask | ||
13 | +Project-URL: Issue tracker, https://github.com/pallets/flask/issues | ||
14 | +Platform: UNKNOWN | ||
15 | +Classifier: Development Status :: 5 - Production/Stable | ||
16 | +Classifier: Environment :: Web Environment | ||
17 | +Classifier: Framework :: Flask | ||
18 | +Classifier: Intended Audience :: Developers | ||
19 | +Classifier: License :: OSI Approved :: BSD License | ||
20 | +Classifier: Operating System :: OS Independent | ||
21 | +Classifier: Programming Language :: Python | ||
22 | +Classifier: Programming Language :: Python :: 2 | ||
23 | +Classifier: Programming Language :: Python :: 2.7 | ||
24 | +Classifier: Programming Language :: Python :: 3 | ||
25 | +Classifier: Programming Language :: Python :: 3.5 | ||
26 | +Classifier: Programming Language :: Python :: 3.6 | ||
27 | +Classifier: Programming Language :: Python :: 3.7 | ||
28 | +Classifier: Programming Language :: Python :: 3.8 | ||
29 | +Classifier: Programming Language :: Python :: Implementation :: CPython | ||
30 | +Classifier: Programming Language :: Python :: Implementation :: PyPy | ||
31 | +Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content | ||
32 | +Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application | ||
33 | +Classifier: Topic :: Software Development :: Libraries :: Application Frameworks | ||
34 | +Classifier: Topic :: Software Development :: Libraries :: Python Modules | ||
35 | +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.* | ||
36 | +Requires-Dist: Werkzeug (>=0.15) | ||
37 | +Requires-Dist: Jinja2 (>=2.10.1) | ||
38 | +Requires-Dist: itsdangerous (>=0.24) | ||
39 | +Requires-Dist: click (>=5.1) | ||
40 | +Provides-Extra: dev | ||
41 | +Requires-Dist: pytest ; extra == 'dev' | ||
42 | +Requires-Dist: coverage ; extra == 'dev' | ||
43 | +Requires-Dist: tox ; extra == 'dev' | ||
44 | +Requires-Dist: sphinx ; extra == 'dev' | ||
45 | +Requires-Dist: pallets-sphinx-themes ; extra == 'dev' | ||
46 | +Requires-Dist: sphinxcontrib-log-cabinet ; extra == 'dev' | ||
47 | +Requires-Dist: sphinx-issues ; extra == 'dev' | ||
48 | +Provides-Extra: docs | ||
49 | +Requires-Dist: sphinx ; extra == 'docs' | ||
50 | +Requires-Dist: pallets-sphinx-themes ; extra == 'docs' | ||
51 | +Requires-Dist: sphinxcontrib-log-cabinet ; extra == 'docs' | ||
52 | +Requires-Dist: sphinx-issues ; extra == 'docs' | ||
53 | +Provides-Extra: dotenv | ||
54 | +Requires-Dist: python-dotenv ; extra == 'dotenv' | ||
55 | + | ||
56 | +Flask | ||
57 | +===== | ||
58 | + | ||
59 | +Flask is a lightweight `WSGI`_ web application framework. It is designed | ||
60 | +to make getting started quick and easy, with the ability to scale up to | ||
61 | +complex applications. It began as a simple wrapper around `Werkzeug`_ | ||
62 | +and `Jinja`_ and has become one of the most popular Python web | ||
63 | +application frameworks. | ||
64 | + | ||
65 | +Flask offers suggestions, but doesn't enforce any dependencies or | ||
66 | +project layout. It is up to the developer to choose the tools and | ||
67 | +libraries they want to use. There are many extensions provided by the | ||
68 | +community that make adding new functionality easy. | ||
69 | + | ||
70 | + | ||
71 | +Installing | ||
72 | +---------- | ||
73 | + | ||
74 | +Install and update using `pip`_: | ||
75 | + | ||
76 | +.. code-block:: text | ||
77 | + | ||
78 | + pip install -U Flask | ||
79 | + | ||
80 | + | ||
81 | +A Simple Example | ||
82 | +---------------- | ||
83 | + | ||
84 | +.. code-block:: python | ||
85 | + | ||
86 | + from flask import Flask | ||
87 | + | ||
88 | + app = Flask(__name__) | ||
89 | + | ||
90 | + @app.route("/") | ||
91 | + def hello(): | ||
92 | + return "Hello, World!" | ||
93 | + | ||
94 | +.. code-block:: text | ||
95 | + | ||
96 | + $ env FLASK_APP=hello.py flask run | ||
97 | + * Serving Flask app "hello" | ||
98 | + * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) | ||
99 | + | ||
100 | + | ||
101 | +Contributing | ||
102 | +------------ | ||
103 | + | ||
104 | +For guidance on setting up a development environment and how to make a | ||
105 | +contribution to Flask, see the `contributing guidelines`_. | ||
106 | + | ||
107 | +.. _contributing guidelines: https://github.com/pallets/flask/blob/master/CONTRIBUTING.rst | ||
108 | + | ||
109 | + | ||
110 | +Donate | ||
111 | +------ | ||
112 | + | ||
113 | +The Pallets organization develops and supports Flask and the libraries | ||
114 | +it uses. In order to grow the community of contributors and users, and | ||
115 | +allow the maintainers to devote more time to the projects, `please | ||
116 | +donate today`_. | ||
117 | + | ||
118 | +.. _please donate today: https://psfmember.org/civicrm/contribute/transact?reset=1&id=20 | ||
119 | + | ||
120 | + | ||
121 | +Links | ||
122 | +----- | ||
123 | + | ||
124 | +* Website: https://palletsprojects.com/p/flask/ | ||
125 | +* Documentation: https://flask.palletsprojects.com/ | ||
126 | +* Releases: https://pypi.org/project/Flask/ | ||
127 | +* Code: https://github.com/pallets/flask | ||
128 | +* Issue tracker: https://github.com/pallets/flask/issues | ||
129 | +* Test status: https://dev.azure.com/pallets/flask/_build | ||
130 | +* Official chat: https://discord.gg/t6rrQZH | ||
131 | + | ||
132 | +.. _WSGI: https://wsgi.readthedocs.io | ||
133 | +.. _Werkzeug: https://www.palletsprojects.com/p/werkzeug/ | ||
134 | +.. _Jinja: https://www.palletsprojects.com/p/jinja/ | ||
135 | +.. _pip: https://pip.pypa.io/en/stable/quickstart/ | ||
136 | + | ||
137 | + |
1 | +../../Scripts/flask.exe,sha256=crX1FXqR6qv685jlJx2II5eveFwhxnA7gTRlZPl6xYM,97121 | ||
2 | +Flask-1.1.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 | ||
3 | +Flask-1.1.2.dist-info/LICENSE.rst,sha256=SJqOEQhQntmKN7uYPhHg9-HTHwvY-Zp5yESOf_N9B-o,1475 | ||
4 | +Flask-1.1.2.dist-info/METADATA,sha256=3INpPWH6nKfZ33R2N-bQZy4TOe1wQCMweZc9mwcNrtc,4591 | ||
5 | +Flask-1.1.2.dist-info/RECORD,, | ||
6 | +Flask-1.1.2.dist-info/WHEEL,sha256=8zNYZbwQSXoB9IfXOjPfeNwvAsALAjffgk27FqvCWbo,110 | ||
7 | +Flask-1.1.2.dist-info/entry_points.txt,sha256=gBLA1aKg0OYR8AhbAfg8lnburHtKcgJLDU52BBctN0k,42 | ||
8 | +Flask-1.1.2.dist-info/top_level.txt,sha256=dvi65F6AeGWVU0TBpYiC04yM60-FX1gJFkK31IKQr5c,6 | ||
9 | +flask/__init__.py,sha256=YnA9wkwbJcnb_jTT-nMsMFeFE_UWt33khKzdHmMSuyI,1894 | ||
10 | +flask/__main__.py,sha256=fjVtt3QTANXlpJCOv3Ha7d5H-76MwzSIOab7SFD9TEk,254 | ||
11 | +flask/__pycache__/__init__.cpython-38.pyc,, | ||
12 | +flask/__pycache__/__main__.cpython-38.pyc,, | ||
13 | +flask/__pycache__/_compat.cpython-38.pyc,, | ||
14 | +flask/__pycache__/app.cpython-38.pyc,, | ||
15 | +flask/__pycache__/blueprints.cpython-38.pyc,, | ||
16 | +flask/__pycache__/cli.cpython-38.pyc,, | ||
17 | +flask/__pycache__/config.cpython-38.pyc,, | ||
18 | +flask/__pycache__/ctx.cpython-38.pyc,, | ||
19 | +flask/__pycache__/debughelpers.cpython-38.pyc,, | ||
20 | +flask/__pycache__/globals.cpython-38.pyc,, | ||
21 | +flask/__pycache__/helpers.cpython-38.pyc,, | ||
22 | +flask/__pycache__/logging.cpython-38.pyc,, | ||
23 | +flask/__pycache__/sessions.cpython-38.pyc,, | ||
24 | +flask/__pycache__/signals.cpython-38.pyc,, | ||
25 | +flask/__pycache__/templating.cpython-38.pyc,, | ||
26 | +flask/__pycache__/testing.cpython-38.pyc,, | ||
27 | +flask/__pycache__/views.cpython-38.pyc,, | ||
28 | +flask/__pycache__/wrappers.cpython-38.pyc,, | ||
29 | +flask/_compat.py,sha256=8KPT54Iig96TuLipdogLRHNYToIcg-xPhnSV5VRERnw,4099 | ||
30 | +flask/app.py,sha256=tmEhx_XrIRP24vZg39dHMWFzJ2jj-YxIcd51LaIT5cE,98059 | ||
31 | +flask/blueprints.py,sha256=vkdm8NusGsfZUeIfPdCluj733QFmiQcT4Sk1tuZLUjw,21400 | ||
32 | +flask/cli.py,sha256=SIb22uq9wYBeB2tKMl0pYdhtZ1MAQyZtPL-3m6es4G0,31035 | ||
33 | +flask/config.py,sha256=3dejvQRYfNHw_V7dCLMxU8UNFpL34xIKemN7gHZIZ8Y,10052 | ||
34 | +flask/ctx.py,sha256=cks-omGedkxawHFo6bKIrdOHsJCAgg1i_NWw_htxb5U,16724 | ||
35 | +flask/debughelpers.py,sha256=-whvPKuAoU8AZ9c1z_INuOeBgfYDqE1J2xNBsoriugU,6475 | ||
36 | +flask/globals.py,sha256=OgcHb6_NCyX6-TldciOdKcyj4PNfyQwClxdMhvov6aA,1637 | ||
37 | +flask/helpers.py,sha256=IHa578HU_3XAAo1wpXQv24MYRYO5TzaiDQQwvUIcE6Q,43074 | ||
38 | +flask/json/__init__.py,sha256=6nITbZYiYOPB8Qfi1-dvsblwn01KRz8VOsMBIZyaYek,11988 | ||
39 | +flask/json/__pycache__/__init__.cpython-38.pyc,, | ||
40 | +flask/json/__pycache__/tag.cpython-38.pyc,, | ||
41 | +flask/json/tag.py,sha256=vq9GOllg_0kTWKuVFrwmkeOQzR-jdBD23x-89JyCCQI,8306 | ||
42 | +flask/logging.py,sha256=WcY5UkqTysGfmosyygSlXyZYGwOp3y-VsE6ehoJ48dk,3250 | ||
43 | +flask/sessions.py,sha256=G0KsEkr_i1LG_wOINwFSOW3ts7Xbv4bNgEZKc7TRloc,14360 | ||
44 | +flask/signals.py,sha256=yYLOed2x8WnQ7pirGalQYfpYpCILJ0LJhmNSrnWvjqw,2212 | ||
45 | +flask/templating.py,sha256=F8E_IZXn9BGsjMzUJ5N_ACMyZdiFBp_SSEaUunvfZ7g,4939 | ||
46 | +flask/testing.py,sha256=WXsciCQbHBP7xjHqNvOA4bT0k86GvSNpgzncfXLDEEg,10146 | ||
47 | +flask/views.py,sha256=eeWnadLAj0QdQPLtjKipDetRZyG62CT2y7fNOFDJz0g,5802 | ||
48 | +flask/wrappers.py,sha256=kgsvtZuMM6RQaDqhRbc5Pcj9vqTnaERl2pmXcdGL7LU,4736 |
1 | +flask |
1 | +pip |
1 | +Copyright 2007 Pallets | ||
2 | + | ||
3 | +Redistribution and use in source and binary forms, with or without | ||
4 | +modification, are permitted provided that the following conditions are | ||
5 | +met: | ||
6 | + | ||
7 | +1. Redistributions of source code must retain the above copyright | ||
8 | + notice, this list of conditions and the following disclaimer. | ||
9 | + | ||
10 | +2. Redistributions in binary form must reproduce the above copyright | ||
11 | + notice, this list of conditions and the following disclaimer in the | ||
12 | + documentation and/or other materials provided with the distribution. | ||
13 | + | ||
14 | +3. Neither the name of the copyright holder nor the names of its | ||
15 | + contributors may be used to endorse or promote products derived from | ||
16 | + this software without specific prior written permission. | ||
17 | + | ||
18 | +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
19 | +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
20 | +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A | ||
21 | +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
22 | +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
23 | +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED | ||
24 | +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | ||
25 | +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | ||
26 | +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | ||
27 | +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
28 | +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
1 | +Metadata-Version: 2.1 | ||
2 | +Name: Jinja2 | ||
3 | +Version: 2.11.2 | ||
4 | +Summary: A very fast and expressive template engine. | ||
5 | +Home-page: https://palletsprojects.com/p/jinja/ | ||
6 | +Author: Armin Ronacher | ||
7 | +Author-email: armin.ronacher@active-4.com | ||
8 | +Maintainer: Pallets | ||
9 | +Maintainer-email: contact@palletsprojects.com | ||
10 | +License: BSD-3-Clause | ||
11 | +Project-URL: Documentation, https://jinja.palletsprojects.com/ | ||
12 | +Project-URL: Code, https://github.com/pallets/jinja | ||
13 | +Project-URL: Issue tracker, https://github.com/pallets/jinja/issues | ||
14 | +Platform: UNKNOWN | ||
15 | +Classifier: Development Status :: 5 - Production/Stable | ||
16 | +Classifier: Environment :: Web Environment | ||
17 | +Classifier: Intended Audience :: Developers | ||
18 | +Classifier: License :: OSI Approved :: BSD License | ||
19 | +Classifier: Operating System :: OS Independent | ||
20 | +Classifier: Programming Language :: Python | ||
21 | +Classifier: Programming Language :: Python :: 2 | ||
22 | +Classifier: Programming Language :: Python :: 2.7 | ||
23 | +Classifier: Programming Language :: Python :: 3 | ||
24 | +Classifier: Programming Language :: Python :: 3.5 | ||
25 | +Classifier: Programming Language :: Python :: 3.6 | ||
26 | +Classifier: Programming Language :: Python :: 3.7 | ||
27 | +Classifier: Programming Language :: Python :: 3.8 | ||
28 | +Classifier: Programming Language :: Python :: Implementation :: CPython | ||
29 | +Classifier: Programming Language :: Python :: Implementation :: PyPy | ||
30 | +Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content | ||
31 | +Classifier: Topic :: Software Development :: Libraries :: Python Modules | ||
32 | +Classifier: Topic :: Text Processing :: Markup :: HTML | ||
33 | +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.* | ||
34 | +Description-Content-Type: text/x-rst | ||
35 | +Requires-Dist: MarkupSafe (>=0.23) | ||
36 | +Provides-Extra: i18n | ||
37 | +Requires-Dist: Babel (>=0.8) ; extra == 'i18n' | ||
38 | + | ||
39 | +Jinja | ||
40 | +===== | ||
41 | + | ||
42 | +Jinja is a fast, expressive, extensible templating engine. Special | ||
43 | +placeholders in the template allow writing code similar to Python | ||
44 | +syntax. Then the template is passed data to render the final document. | ||
45 | + | ||
46 | +It includes: | ||
47 | + | ||
48 | +- Template inheritance and inclusion. | ||
49 | +- Define and import macros within templates. | ||
50 | +- HTML templates can use autoescaping to prevent XSS from untrusted | ||
51 | + user input. | ||
52 | +- A sandboxed environment can safely render untrusted templates. | ||
53 | +- AsyncIO support for generating templates and calling async | ||
54 | + functions. | ||
55 | +- I18N support with Babel. | ||
56 | +- Templates are compiled to optimized Python code just-in-time and | ||
57 | + cached, or can be compiled ahead-of-time. | ||
58 | +- Exceptions point to the correct line in templates to make debugging | ||
59 | + easier. | ||
60 | +- Extensible filters, tests, functions, and even syntax. | ||
61 | + | ||
62 | +Jinja's philosophy is that while application logic belongs in Python if | ||
63 | +possible, it shouldn't make the template designer's job difficult by | ||
64 | +restricting functionality too much. | ||
65 | + | ||
66 | + | ||
67 | +Installing | ||
68 | +---------- | ||
69 | + | ||
70 | +Install and update using `pip`_: | ||
71 | + | ||
72 | +.. code-block:: text | ||
73 | + | ||
74 | + $ pip install -U Jinja2 | ||
75 | + | ||
76 | +.. _pip: https://pip.pypa.io/en/stable/quickstart/ | ||
77 | + | ||
78 | + | ||
79 | +In A Nutshell | ||
80 | +------------- | ||
81 | + | ||
82 | +.. code-block:: jinja | ||
83 | + | ||
84 | + {% extends "base.html" %} | ||
85 | + {% block title %}Members{% endblock %} | ||
86 | + {% block content %} | ||
87 | + <ul> | ||
88 | + {% for user in users %} | ||
89 | + <li><a href="{{ user.url }}">{{ user.username }}</a></li> | ||
90 | + {% endfor %} | ||
91 | + </ul> | ||
92 | + {% endblock %} | ||
93 | + | ||
94 | + | ||
95 | +Links | ||
96 | +----- | ||
97 | + | ||
98 | +- Website: https://palletsprojects.com/p/jinja/ | ||
99 | +- Documentation: https://jinja.palletsprojects.com/ | ||
100 | +- Releases: https://pypi.org/project/Jinja2/ | ||
101 | +- Code: https://github.com/pallets/jinja | ||
102 | +- Issue tracker: https://github.com/pallets/jinja/issues | ||
103 | +- Test status: https://dev.azure.com/pallets/jinja/_build | ||
104 | +- Official chat: https://discord.gg/t6rrQZH | ||
105 | + | ||
106 | + |
1 | +Jinja2-2.11.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 | ||
2 | +Jinja2-2.11.2.dist-info/LICENSE.rst,sha256=O0nc7kEF6ze6wQ-vG-JgQI_oXSUrjp3y4JefweCUQ3s,1475 | ||
3 | +Jinja2-2.11.2.dist-info/METADATA,sha256=5ZHRZoIRAMHsJPnqhlJ622_dRPsYePYJ-9EH4-Ry7yI,3535 | ||
4 | +Jinja2-2.11.2.dist-info/RECORD,, | ||
5 | +Jinja2-2.11.2.dist-info/WHEEL,sha256=kGT74LWyRUZrL4VgLh6_g12IeVl_9u9ZVhadrgXZUEY,110 | ||
6 | +Jinja2-2.11.2.dist-info/entry_points.txt,sha256=Qy_DkVo6Xj_zzOtmErrATe8lHZhOqdjpt3e4JJAGyi8,61 | ||
7 | +Jinja2-2.11.2.dist-info/top_level.txt,sha256=PkeVWtLb3-CqjWi1fO29OCbj55EhX_chhKrCdrVe_zs,7 | ||
8 | +jinja2/__init__.py,sha256=0QCM_jKKDM10yzSdHRVV4mQbCbDqf0GN0GirAqibn9Y,1549 | ||
9 | +jinja2/__pycache__/__init__.cpython-38.pyc,, | ||
10 | +jinja2/__pycache__/_compat.cpython-38.pyc,, | ||
11 | +jinja2/__pycache__/_identifier.cpython-38.pyc,, | ||
12 | +jinja2/__pycache__/asyncfilters.cpython-38.pyc,, | ||
13 | +jinja2/__pycache__/asyncsupport.cpython-38.pyc,, | ||
14 | +jinja2/__pycache__/bccache.cpython-38.pyc,, | ||
15 | +jinja2/__pycache__/compiler.cpython-38.pyc,, | ||
16 | +jinja2/__pycache__/constants.cpython-38.pyc,, | ||
17 | +jinja2/__pycache__/debug.cpython-38.pyc,, | ||
18 | +jinja2/__pycache__/defaults.cpython-38.pyc,, | ||
19 | +jinja2/__pycache__/environment.cpython-38.pyc,, | ||
20 | +jinja2/__pycache__/exceptions.cpython-38.pyc,, | ||
21 | +jinja2/__pycache__/ext.cpython-38.pyc,, | ||
22 | +jinja2/__pycache__/filters.cpython-38.pyc,, | ||
23 | +jinja2/__pycache__/idtracking.cpython-38.pyc,, | ||
24 | +jinja2/__pycache__/lexer.cpython-38.pyc,, | ||
25 | +jinja2/__pycache__/loaders.cpython-38.pyc,, | ||
26 | +jinja2/__pycache__/meta.cpython-38.pyc,, | ||
27 | +jinja2/__pycache__/nativetypes.cpython-38.pyc,, | ||
28 | +jinja2/__pycache__/nodes.cpython-38.pyc,, | ||
29 | +jinja2/__pycache__/optimizer.cpython-38.pyc,, | ||
30 | +jinja2/__pycache__/parser.cpython-38.pyc,, | ||
31 | +jinja2/__pycache__/runtime.cpython-38.pyc,, | ||
32 | +jinja2/__pycache__/sandbox.cpython-38.pyc,, | ||
33 | +jinja2/__pycache__/tests.cpython-38.pyc,, | ||
34 | +jinja2/__pycache__/utils.cpython-38.pyc,, | ||
35 | +jinja2/__pycache__/visitor.cpython-38.pyc,, | ||
36 | +jinja2/_compat.py,sha256=B6Se8HjnXVpzz9-vfHejn-DV2NjaVK-Iewupc5kKlu8,3191 | ||
37 | +jinja2/_identifier.py,sha256=EdgGJKi7O1yvr4yFlvqPNEqV6M1qHyQr8Gt8GmVTKVM,1775 | ||
38 | +jinja2/asyncfilters.py,sha256=XJtYXTxFvcJ5xwk6SaDL4S0oNnT0wPYvXBCSzc482fI,4250 | ||
39 | +jinja2/asyncsupport.py,sha256=ZBFsDLuq3Gtji3Ia87lcyuDbqaHZJRdtShZcqwpFnSQ,7209 | ||
40 | +jinja2/bccache.py,sha256=3Pmp4jo65M9FQuIxdxoDBbEDFwe4acDMQf77nEJfrHA,12139 | ||
41 | +jinja2/compiler.py,sha256=Ta9W1Lit542wItAHXlDcg0sEOsFDMirCdlFPHAurg4o,66284 | ||
42 | +jinja2/constants.py,sha256=RR1sTzNzUmKco6aZicw4JpQpJGCuPuqm1h1YmCNUEFY,1458 | ||
43 | +jinja2/debug.py,sha256=neR7GIGGjZH3_ILJGVUYy3eLQCCaWJMXOb7o0kGInWc,8529 | ||
44 | +jinja2/defaults.py,sha256=85B6YUUCyWPSdrSeVhcqFVuu_bHUAQXeey--FIwSeVQ,1126 | ||
45 | +jinja2/environment.py,sha256=XDSLKc4SqNLMOwTSq3TbWEyA5WyXfuLuVD0wAVjEFwM,50629 | ||
46 | +jinja2/exceptions.py,sha256=VjNLawcmf2ODffqVMCQK1cRmvFaUfQWF4u8ouP3QPcE,5425 | ||
47 | +jinja2/ext.py,sha256=AtwL5O5enT_L3HR9-oBvhGyUTdGoyaqG_ICtnR_EVd4,26441 | ||
48 | +jinja2/filters.py,sha256=_RpPgAlgIj7ExvyDzcHAC3B36cocfWK-1TEketbNeM0,41415 | ||
49 | +jinja2/idtracking.py,sha256=J3O4VHsrbf3wzwiBc7Cro26kHb6_5kbULeIOzocchIU,9211 | ||
50 | +jinja2/lexer.py,sha256=nUFLRKhhKmmEWkLI65nQePgcQs7qsRdjVYZETMt_v0g,30331 | ||
51 | +jinja2/loaders.py,sha256=C-fST_dmFjgWkp0ZuCkrgICAoOsoSIF28wfAFink0oU,17666 | ||
52 | +jinja2/meta.py,sha256=QjyYhfNRD3QCXjBJpiPl9KgkEkGXJbAkCUq4-Ur10EQ,4131 | ||
53 | +jinja2/nativetypes.py,sha256=Ul__gtVw4xH-0qvUvnCNHedQeNDwmEuyLJztzzSPeRg,2753 | ||
54 | +jinja2/nodes.py,sha256=Mk1oJPVgIjnQw9WOqILvcu3rLepcFZ0ahxQm2mbwDwc,31095 | ||
55 | +jinja2/optimizer.py,sha256=gQLlMYzvQhluhzmAIFA1tXS0cwgWYOjprN-gTRcHVsc,1457 | ||
56 | +jinja2/parser.py,sha256=fcfdqePNTNyvosIvczbytVA332qpsURvYnCGcjDHSkA,35660 | ||
57 | +jinja2/runtime.py,sha256=0y-BRyIEZ9ltByL2Id6GpHe1oDRQAwNeQvI0SKobNMw,30618 | ||
58 | +jinja2/sandbox.py,sha256=knayyUvXsZ-F0mk15mO2-ehK9gsw04UhB8td-iUOtLc,17127 | ||
59 | +jinja2/tests.py,sha256=iO_Y-9Vo60zrVe1lMpSl5sKHqAxe2leZHC08OoZ8K24,4799 | ||
60 | +jinja2/utils.py,sha256=OoVMlQe9S2-lWT6jJbTu9tDuDvGNyWUhHDcE51i5_Do,22522 | ||
61 | +jinja2/visitor.py,sha256=DUHupl0a4PGp7nxRtZFttUzAi1ccxzqc2hzetPYUz8U,3240 |
1 | +jinja2 |
1 | +pip |
1 | +Copyright 2010 Pallets | ||
2 | + | ||
3 | +Redistribution and use in source and binary forms, with or without | ||
4 | +modification, are permitted provided that the following conditions are | ||
5 | +met: | ||
6 | + | ||
7 | +1. Redistributions of source code must retain the above copyright | ||
8 | + notice, this list of conditions and the following disclaimer. | ||
9 | + | ||
10 | +2. Redistributions in binary form must reproduce the above copyright | ||
11 | + notice, this list of conditions and the following disclaimer in the | ||
12 | + documentation and/or other materials provided with the distribution. | ||
13 | + | ||
14 | +3. Neither the name of the copyright holder nor the names of its | ||
15 | + contributors may be used to endorse or promote products derived from | ||
16 | + this software without specific prior written permission. | ||
17 | + | ||
18 | +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
19 | +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
20 | +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A | ||
21 | +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
22 | +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
23 | +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED | ||
24 | +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | ||
25 | +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | ||
26 | +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | ||
27 | +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
28 | +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
1 | +Metadata-Version: 2.1 | ||
2 | +Name: MarkupSafe | ||
3 | +Version: 1.1.1 | ||
4 | +Summary: Safely add untrusted strings to HTML/XML markup. | ||
5 | +Home-page: https://palletsprojects.com/p/markupsafe/ | ||
6 | +Author: Armin Ronacher | ||
7 | +Author-email: armin.ronacher@active-4.com | ||
8 | +Maintainer: The Pallets Team | ||
9 | +Maintainer-email: contact@palletsprojects.com | ||
10 | +License: BSD-3-Clause | ||
11 | +Project-URL: Documentation, https://markupsafe.palletsprojects.com/ | ||
12 | +Project-URL: Code, https://github.com/pallets/markupsafe | ||
13 | +Project-URL: Issue tracker, https://github.com/pallets/markupsafe/issues | ||
14 | +Platform: UNKNOWN | ||
15 | +Classifier: Development Status :: 5 - Production/Stable | ||
16 | +Classifier: Environment :: Web Environment | ||
17 | +Classifier: Intended Audience :: Developers | ||
18 | +Classifier: License :: OSI Approved :: BSD License | ||
19 | +Classifier: Operating System :: OS Independent | ||
20 | +Classifier: Programming Language :: Python | ||
21 | +Classifier: Programming Language :: Python :: 2 | ||
22 | +Classifier: Programming Language :: Python :: 2.7 | ||
23 | +Classifier: Programming Language :: Python :: 3 | ||
24 | +Classifier: Programming Language :: Python :: 3.4 | ||
25 | +Classifier: Programming Language :: Python :: 3.5 | ||
26 | +Classifier: Programming Language :: Python :: 3.6 | ||
27 | +Classifier: Programming Language :: Python :: 3.7 | ||
28 | +Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content | ||
29 | +Classifier: Topic :: Software Development :: Libraries :: Python Modules | ||
30 | +Classifier: Topic :: Text Processing :: Markup :: HTML | ||
31 | +Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.* | ||
32 | +Description-Content-Type: text/x-rst | ||
33 | + | ||
34 | +MarkupSafe | ||
35 | +========== | ||
36 | + | ||
37 | +MarkupSafe implements a text object that escapes characters so it is | ||
38 | +safe to use in HTML and XML. Characters that have special meanings are | ||
39 | +replaced so that they display as the actual characters. This mitigates | ||
40 | +injection attacks, meaning untrusted user input can safely be displayed | ||
41 | +on a page. | ||
42 | + | ||
43 | + | ||
44 | +Installing | ||
45 | +---------- | ||
46 | + | ||
47 | +Install and update using `pip`_: | ||
48 | + | ||
49 | +.. code-block:: text | ||
50 | + | ||
51 | + pip install -U MarkupSafe | ||
52 | + | ||
53 | +.. _pip: https://pip.pypa.io/en/stable/quickstart/ | ||
54 | + | ||
55 | + | ||
56 | +Examples | ||
57 | +-------- | ||
58 | + | ||
59 | +.. code-block:: pycon | ||
60 | + | ||
61 | + >>> from markupsafe import Markup, escape | ||
62 | + >>> # escape replaces special characters and wraps in Markup | ||
63 | + >>> escape('<script>alert(document.cookie);</script>') | ||
64 | + Markup(u'<script>alert(document.cookie);</script>') | ||
65 | + >>> # wrap in Markup to mark text "safe" and prevent escaping | ||
66 | + >>> Markup('<strong>Hello</strong>') | ||
67 | + Markup('<strong>hello</strong>') | ||
68 | + >>> escape(Markup('<strong>Hello</strong>')) | ||
69 | + Markup('<strong>hello</strong>') | ||
70 | + >>> # Markup is a text subclass (str on Python 3, unicode on Python 2) | ||
71 | + >>> # methods and operators escape their arguments | ||
72 | + >>> template = Markup("Hello <em>%s</em>") | ||
73 | + >>> template % '"World"' | ||
74 | + Markup('Hello <em>"World"</em>') | ||
75 | + | ||
76 | + | ||
77 | +Donate | ||
78 | +------ | ||
79 | + | ||
80 | +The Pallets organization develops and supports MarkupSafe and other | ||
81 | +libraries that use it. In order to grow the community of contributors | ||
82 | +and users, and allow the maintainers to devote more time to the | ||
83 | +projects, `please donate today`_. | ||
84 | + | ||
85 | +.. _please donate today: https://palletsprojects.com/donate | ||
86 | + | ||
87 | + | ||
88 | +Links | ||
89 | +----- | ||
90 | + | ||
91 | +* Website: https://palletsprojects.com/p/markupsafe/ | ||
92 | +* Documentation: https://markupsafe.palletsprojects.com/ | ||
93 | +* License: `BSD-3-Clause <https://github.com/pallets/markupsafe/blob/master/LICENSE.rst>`_ | ||
94 | +* Releases: https://pypi.org/project/MarkupSafe/ | ||
95 | +* Code: https://github.com/pallets/markupsafe | ||
96 | +* Issue tracker: https://github.com/pallets/markupsafe/issues | ||
97 | +* Test status: | ||
98 | + | ||
99 | + * Linux, Mac: https://travis-ci.org/pallets/markupsafe | ||
100 | + * Windows: https://ci.appveyor.com/project/pallets/markupsafe | ||
101 | + | ||
102 | +* Test coverage: https://codecov.io/gh/pallets/markupsafe | ||
103 | +* Official chat: https://discord.gg/t6rrQZH | ||
104 | + | ||
105 | + |
1 | +MarkupSafe-1.1.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 | ||
2 | +MarkupSafe-1.1.1.dist-info/LICENSE.rst,sha256=RjHsDbX9kKVH4zaBcmTGeYIUM4FG-KyUtKV_lu6MnsQ,1503 | ||
3 | +MarkupSafe-1.1.1.dist-info/METADATA,sha256=IFCP4hCNGjXJgMoSvdjPiKDLAMUTTWoxKXQsQvmyMNU,3653 | ||
4 | +MarkupSafe-1.1.1.dist-info/RECORD,, | ||
5 | +MarkupSafe-1.1.1.dist-info/WHEEL,sha256=jovIjvNuo6l5lHtTPdXyjKVQ_5SCkmdptE5fkPNfjyM,101 | ||
6 | +MarkupSafe-1.1.1.dist-info/top_level.txt,sha256=qy0Plje5IJuvsCBjejJyhDCjEAdcDLK_2agVcex8Z6U,11 | ||
7 | +markupsafe/__init__.py,sha256=UAy1UKlykemnSZWIVn8RDqY0wvjV6lkeRwYOMNhw4bA,10453 | ||
8 | +markupsafe/__pycache__/__init__.cpython-38.pyc,, | ||
9 | +markupsafe/__pycache__/_compat.cpython-38.pyc,, | ||
10 | +markupsafe/__pycache__/_constants.cpython-38.pyc,, | ||
11 | +markupsafe/__pycache__/_native.cpython-38.pyc,, | ||
12 | +markupsafe/_compat.py,sha256=XweNhJEcyTP_wIBUaIO6nxzIb6XFwweriXyZfiTpkdw,591 | ||
13 | +markupsafe/_constants.py,sha256=IXLUQkLM6CTustG5vEQTEy6pBB3z5pm84NkYU1aW9qI,4954 | ||
14 | +markupsafe/_native.py,sha256=LwsYk-GHoPsPboRD_tNC6_jTmCj3MLtsnDFis7HjE50,1942 | ||
15 | +markupsafe/_speedups.cp38-win32.pyd,sha256=8nGEdcR_DUewvF72FxW6d-aD5SYoLMe2prWwEEnH9ck,12800 |
1 | +markupsafe |
1 | +pip |
This diff is collapsed. Click to expand it.
1 | +Metadata-Version: 2.1 | ||
2 | +Name: PyKomoran | ||
3 | +Version: 0.1.5 | ||
4 | +Summary: PyKomoran is Python wrapper for KOMORAN, KOrean MORphical ANalyzer. | ||
5 | +Home-page: https://pydocs.komoran.kr | ||
6 | +Author: Junghwan Park, Junsoo Shin, Geunho Lee | ||
7 | +Author-email: shineware.contact.form@gmail.com | ||
8 | +Maintainer: Junghwan Park, Junsoo Shin, Geunho Lee | ||
9 | +Maintainer-email: shineware.contact.form@gmail.com | ||
10 | +License: Apache 2.0 | ||
11 | +Download-URL: https://github.com/shineware/PyKOMORAN/releases/download/0.1.5/PyKomoran-0.1.5.tar.gz | ||
12 | +Keywords: KOMORAN,KOrean MORphical ANalyzer,MORphical Analyzer,Text Analyzer,Tokenizer,PoS Tagger,Korean,Linguistic,NLP,Natural Language Processing | ||
13 | +Platform: UNKNOWN | ||
14 | +Classifier: Development Status :: 4 - Beta | ||
15 | +Classifier: Environment :: Console | ||
16 | +Classifier: Intended Audience :: Developers | ||
17 | +Classifier: Intended Audience :: Education | ||
18 | +Classifier: Intended Audience :: Information Technology | ||
19 | +Classifier: Intended Audience :: Science/Research | ||
20 | +Classifier: License :: OSI Approved :: Apache Software License | ||
21 | +Classifier: Natural Language :: Korean | ||
22 | +Classifier: Programming Language :: Java | ||
23 | +Classifier: Programming Language :: Python :: 3 :: Only | ||
24 | +Classifier: Programming Language :: Python :: 3.4 | ||
25 | +Classifier: Programming Language :: Python :: 3.5 | ||
26 | +Classifier: Programming Language :: Python :: 3.6 | ||
27 | +Classifier: Programming Language :: Python :: 3.7 | ||
28 | +Classifier: Topic :: Scientific/Engineering :: Information Analysis | ||
29 | +Classifier: Topic :: Software Development :: Libraries :: Java Libraries | ||
30 | +Classifier: Topic :: Text Processing :: Linguistic | ||
31 | +Description-Content-Type: text/markdown | ||
32 | +Requires-Dist: py4j (==0.10.8.1) | ||
33 | +Provides-Extra: test | ||
34 | +Requires-Dist: coverage (==4.5.3) ; extra == 'test' | ||
35 | +Requires-Dist: nose (==1.3.7) ; extra == 'test' | ||
36 | + | ||
37 | +# PyKOMORAN | ||
38 | + | ||
39 | +[![PyPI](https://img.shields.io/pypi/v/PyKomoran.svg)](https://pypi.org/project/PyKomoran) | ||
40 | +[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/PyKomoran.svg)](https://pypi.org/project/PyKomoran) | ||
41 | +[![Downloads](https://img.shields.io/pypi/dm/PyKomoran.svg)](https://pypi.org/project/PyKomoran) | ||
42 | +[![License](https://img.shields.io/github/license/shineware/PyKOMORAN.svg)](https://www.apache.org/licenses/LICENSE-2.0) | ||
43 | + | ||
44 | +## Introduction | ||
45 | + | ||
46 | +* PyKOMORAN is Python wrapper project for [KOMORAN, KOrean MORphical ANalyzer](https://github.com/shin285/KOMORAN). | ||
47 | +* PyKOMORAN is using [Py4J](https://github.com/bartdag/py4j) for wrapping [KOMORAN Java library](https://github.com/shin285/KOMORAN). | ||
48 | +* If you have any issue or question, please leave an issue on [PyKOMORAN Project](https://github.com/shineware/PyKOMORAN/issues). | ||
49 | + | ||
50 | +## Installation | ||
51 | + | ||
52 | +### Requirements | ||
53 | + | ||
54 | +* To use PyKomoran, the following requirements must be installed | ||
55 | + * Java 8+ JDK Environment | ||
56 | + * Python 3.4+ | ||
57 | + * We recommend you use Python 3.4 or higher. | ||
58 | + * [Py4J](https://www.py4j.org/install.html), 0.10 (or higher) | ||
59 | + * This will be installed when installing PyKomoran using `pip`. | ||
60 | + | ||
61 | +### How to install | ||
62 | + | ||
63 | +* You can install PyKomoran using `pip`. | ||
64 | + | ||
65 | +```bash | ||
66 | + pip install PyKomoran | ||
67 | +``` | ||
68 | + | ||
69 | +* Or, just clone this repository and install by yourself. | ||
70 | + | ||
71 | +```sh | ||
72 | + git clone https://github.com/shineware/PyKOMORAN | ||
73 | + cd PyKOMORAN/python | ||
74 | + python setup.py install | ||
75 | +``` | ||
76 | + | ||
77 | +* Please refer to [installation document](https://pydocs.komoran.kr/firststep/installation.html?utm_source=PyPI&utm_medium=Referral&utm_campaign=PyKomoran) for detailed installation method. | ||
78 | + | ||
79 | +## Usage | ||
80 | + | ||
81 | +### Quick start | ||
82 | + | ||
83 | +* After import dependencies, create a Komoran instance. | ||
84 | + | ||
85 | +```python | ||
86 | + from PyKomoran import * | ||
87 | + komoran = Komoran(DEFAULT_MODEL['LIGHT']) | ||
88 | +``` | ||
89 | + | ||
90 | +* After then, run analyzing method. | ||
91 | + | ||
92 | +```python | ||
93 | + komoran.get_plain_text("① 대한민국은 민주공화국이다.") | ||
94 | + # # Result | ||
95 | + # '①/SW 대한민국/NNP 은/JX 민주/NNP 공화국/NNG 이/VCP 다/EF ./SF' | ||
96 | +``` | ||
97 | + | ||
98 | +### Usage in detail | ||
99 | + | ||
100 | +* Please refer [KOMORAN Document site](https://pydocs.komoran.kr/firststep/tutorial.html?utm_source=PyPI&utm_medium=Referral&utm_campaign=PyKomoran) for more information. | ||
101 | + | ||
102 | +## Citation | ||
103 | + | ||
104 | +* Please use BibTeX below. | ||
105 | + | ||
106 | + ```tex | ||
107 | + @misc{komoran, | ||
108 | + author = {Junsoo Shin, Junghwan Park, Geunho Lee}, | ||
109 | + title = {KOMORAN}, | ||
110 | + publisher = {GitHub}, | ||
111 | + journal = {GitHub repository}, | ||
112 | + howpublished = {\url{https://github.com/shineware/PyKOMORAN}} | ||
113 | + } | ||
114 | + ``` | ||
115 | + | ||
116 | +## License | ||
117 | + | ||
118 | +* PyKOMORAN is distributed with the Apache 2.0 license, same as [KOMORAN](https://github.com/shin285/KOMORAN). See `LICENSE` for more information. | ||
119 | + | ||
120 | +## Contributing | ||
121 | + | ||
122 | +* We're always happy to receive any contributions including code, bug reports and documentation fixes. | ||
123 | +* Please visit our [Website](https://www.shineware.co.kr/products/komoran/#demo?utm_source=PyPI&utm_medium=Referral&utm_campaign=PyKomoran) and/or [Project Organization at GitHub](https://github.com/komoran) for more information. | ||
124 | +* Or, if you have any necessary features or suggestion? Please leave your idea on [Request to add new feature](https://github.com/shineware/PyKOMORAN/issues/new?template=FEATURE_REQUEST.md) | ||
125 | + | ||
126 | + |
1 | +PyKomoran-0.1.5.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 | ||
2 | +PyKomoran-0.1.5.dist-info/LICENSE,sha256=UtNyw2WS0eTx084aAQgS78aSf8eu7DMsP7NuMrUQpFs,11368 | ||
3 | +PyKomoran-0.1.5.dist-info/METADATA,sha256=aoMajFbgssRAKsO4dRCHS8GEn0kgRZW1_eZr6Wyp-dg,4894 | ||
4 | +PyKomoran-0.1.5.dist-info/RECORD,, | ||
5 | +PyKomoran-0.1.5.dist-info/WHEEL,sha256=U88EhGIw8Sj2_phqajeu_EAi3RAo8-C6zV3REsWbWbs,92 | ||
6 | +PyKomoran-0.1.5.dist-info/top_level.txt,sha256=StNoH0MU5kSXO7HgUsom4XDvsZeL6l7gpAKWI9qD6BQ,10 | ||
7 | +PyKomoran/__init__.py,sha256=0c5kKfwMgsX9gy3a1pD1J70ywAlwE4Qnyna6CHBJlWA,330 | ||
8 | +PyKomoran/__pycache__/__init__.cpython-38.pyc,, | ||
9 | +PyKomoran/__pycache__/__version__.cpython-38.pyc,, | ||
10 | +PyKomoran/__pycache__/core.cpython-38.pyc,, | ||
11 | +PyKomoran/__pycache__/jvm.cpython-38.pyc,, | ||
12 | +PyKomoran/__pycache__/type.cpython-38.pyc,, | ||
13 | +PyKomoran/__version__.py,sha256=PwxxnnJLSeaMf7ASGFpIiVa1Zja9XxDkp-57FqqDnv4,908 | ||
14 | +PyKomoran/core.py,sha256=1PQQO9lnD_cyHmMPwtpztFFYSoKN9aiw6g2c4579kiA,13546 | ||
15 | +PyKomoran/jvm.py,sha256=XWokVZtzW7pjszQ2ngcA1KNIOileQ0EWmrk1fmnfBBk,2078 | ||
16 | +PyKomoran/libs/KOMORAN-4e7b5ef.jar,sha256=yPpjjhZZRSoFxMS3Ez6RcYlL9mjcysvHfCwwI6Hy7Sc,3918398 | ||
17 | +PyKomoran/libs/KOMORANEntryPoint-0.1.0.jar,sha256=Sn6IPGZUVYFbWAn_zVXCrRs92d3kMAwmLY6iwVlft80,4597 | ||
18 | +PyKomoran/libs/py4j0.10.8.1.jar,sha256=fEwxgFcQMdKtZl8bbIP5hJxUatAbzetQJKcD_N9vqOM,121248 | ||
19 | +PyKomoran/models_full/irregular.model,sha256=h1-Pa1ym5ICrcHlvBg85ly8MscgonZ6Suf3PutHxeh0,191920 | ||
20 | +PyKomoran/models_full/observation.model,sha256=DrQ00QDT5hFRgqXaTkIC5uKCdi7PAj6078XI5csMD3I,2934034 | ||
21 | +PyKomoran/models_full/pos.table,sha256=GM6uiQ8igV7KYa3F1_rNqpnQPkvRsdnIlxxYKk-CayI,282 | ||
22 | +PyKomoran/models_full/transition.model,sha256=oA3gVMoObMcxxRVI4bSLcdqsHn538Qjl70obFw1-Zf8,6680 | ||
23 | +PyKomoran/models_light/irregular.model,sha256=a7TW3yHYm2dXoQudpA40ZoxWC2szfbFpyj1X_StXBHQ,191919 | ||
24 | +PyKomoran/models_light/observation.model,sha256=Le1RR_EIqHx_4hvaXyeqeDA9tAhJ8dyXndndxZBtm-c,479047 | ||
25 | +PyKomoran/models_light/pos.table,sha256=GM6uiQ8igV7KYa3F1_rNqpnQPkvRsdnIlxxYKk-CayI,282 | ||
26 | +PyKomoran/models_light/transition.model,sha256=oA3gVMoObMcxxRVI4bSLcdqsHn538Qjl70obFw1-Zf8,6680 | ||
27 | +PyKomoran/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 | ||
28 | +PyKomoran/tests/__pycache__/__init__.cpython-38.pyc,, | ||
29 | +PyKomoran/tests/__pycache__/test__jvm.cpython-38.pyc,, | ||
30 | +PyKomoran/tests/__pycache__/test_core.cpython-38.pyc,, | ||
31 | +PyKomoran/tests/__pycache__/test_type.cpython-38.pyc,, | ||
32 | +PyKomoran/tests/test__jvm.py,sha256=9EPpke1xTflVJm3F9SAD88WCDzmH-vmBArs0ThCT51I,1833 | ||
33 | +PyKomoran/tests/test_core.py,sha256=zo9XXC8XAc7QpX51pP5k3a7eVYuQy1p6BadnfTLiKGs,14188 | ||
34 | +PyKomoran/tests/test_data/dic.user,sha256=B_eXKO0--32cLmqYgKFKVe3vUWaMn-MLI_Zch2EPUPY,16 | ||
35 | +PyKomoran/tests/test_data/fwd.user,sha256=Zms7ImebfBPpBJ-HSsFW48bGNbvngq9aG7Z7Gkgyu1s,39 | ||
36 | +PyKomoran/tests/test_type.py,sha256=AsosO84dv6HVajCfpnVIsilRiBqpfOWlidt3b8v6qWc,2617 | ||
37 | +PyKomoran/type.py,sha256=21CKx7mvqwdPu8w3c6XPxUWUbCVnkwNpMhybf-uyxlw,7524 |
1 | +PyKomoran |
1 | +from .__version__ import __title__, __description__, __url__, __copyright__ | ||
2 | +from .__version__ import __author__, __author_email__, __license__, __version__ | ||
3 | + | ||
4 | +from .jvm import init_jvm | ||
5 | +from .type import Pair, Token, Pos, DEFAULT_MODEL | ||
6 | +from .core import Komoran | ||
7 | + | ||
8 | +__all__ = ['jvm', 'Pair', 'Token', 'Pos', 'DEFAULT_MODEL', 'Komoran'] |
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
1 | +# ,------. ,--. ,--. | ||
2 | +# | .--. ',--. ,--.| .' / ,---. ,--,--,--. ,---. ,--.--. ,--,--.,--,--, | ||
3 | +# | '--' | \ ' / | . ' | .-. || || .-. || .--'' ,-. || \ | ||
4 | +# | | --' \ ' | |\ \' '-' '| | | |' '-' '| | \ '-' || || | | ||
5 | +# `--' .-' / `--' '--' `---' `--`--`--' `---' `--' `--`--'`--''--' | ||
6 | +# `---' | ||
7 | + | ||
8 | +__title__ = 'PyKomoran' | ||
9 | +__description__ = 'PyKomoran is Python wrapper for KOMORAN, KOrean MORphical ANalyzer.' | ||
10 | +__url__ = 'https://pydocs.komoran.kr' | ||
11 | +__version__ = '0.1.5' | ||
12 | +__author__ = 'Junghwan Park, Junsoo Shin, Geunho Lee' | ||
13 | +__author_email__ = 'shineware.contact.form@gmail.com' | ||
14 | +__license__ = 'Apache 2.0' | ||
15 | +__copyright__ = 'Copyright 2019 SHINEWARE' | ||
16 | +__download_url__ = 'https://github.com/shineware/PyKOMORAN/releases/download/{0}/PyKomoran-{0}.tar.gz'.format(__version__) | ||
17 | +__keywords__ = 'KOMORAN, PyKomoran, KOrean MORphical ANalyzer, Morph Analyzer', |
src/venv/Lib/site-packages/PyKomoran/core.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/PyKomoran/jvm.py
0 → 100644
1 | +import os | ||
2 | +import logging | ||
3 | + | ||
4 | +from py4j.java_gateway import GatewayParameters | ||
5 | +from py4j.java_gateway import JavaGateway | ||
6 | +from py4j.java_gateway import launch_gateway | ||
7 | + | ||
8 | +__all__ = ['jvm_gateway', 'init_jvm', 'get_jvm'] | ||
9 | + | ||
10 | +jvm_gateway = None | ||
11 | + | ||
12 | + | ||
13 | +def init_jvm(max_heap=1024, jar_path="./libs"): | ||
14 | + """KOMORAN Jar를 포함한 JVM을 초기화한 후, 반환합니다. | ||
15 | + | ||
16 | + Args: | ||
17 | + max_heap (int): JVM 실행 시 Max Heap Size (기본값: ``1024``, 단위: ``MB``) | ||
18 | + jar_path (str): JVM 실행 시 포함할 Jar Path 지정 (기본값: ``"./libs"``) | ||
19 | + | ||
20 | + Returns: | ||
21 | + py4j.java_gateway.JavaGateway: 초기화된 JVM 객체 | ||
22 | + """ | ||
23 | + base_path = os.path.dirname(os.path.realpath(__file__)) | ||
24 | + jar_path = os.path.abspath(os.path.join(base_path, jar_path)) | ||
25 | + | ||
26 | + assert os.path.exists(jar_path) | ||
27 | + | ||
28 | + global jvm_gateway | ||
29 | + | ||
30 | + if jvm_gateway is not None: | ||
31 | + return | ||
32 | + | ||
33 | + libraries = [ | ||
34 | + '{0}{1}KOMORAN-4e7b5ef.jar', | ||
35 | + '{0}{1}KOMORANEntryPoint-0.1.0.jar', | ||
36 | + # '{0}{1}*' | ||
37 | + ] | ||
38 | + | ||
39 | + classpath = os.pathsep.join([lib.format(jar_path, os.sep) for lib in libraries]) | ||
40 | + py4j_path = "{0}{1}py4j0.10.8.1.jar".format(jar_path, os.sep) | ||
41 | + | ||
42 | + port = launch_gateway(jarpath=py4j_path, | ||
43 | + classpath=classpath, | ||
44 | + javaopts=['-Dfile.encoding=UTF8', '-ea', '-Xmx{}m'.format(max_heap)], | ||
45 | + die_on_exit=True) | ||
46 | + | ||
47 | + logging.debug("initializing JVM... ") | ||
48 | + try: | ||
49 | + jvm_gateway = JavaGateway(gateway_parameters=GatewayParameters(port=port, auto_convert=True)) | ||
50 | + # # for debugging with Java-side | ||
51 | + # jvm_gateway = JavaGateway(gateway_parameters=GatewayParameters(port=25335, auto_convert=True)) | ||
52 | + except Exception as e: | ||
53 | + jvm_gateway = None | ||
54 | + logging.debug("fail") | ||
55 | + logging.debug("success") | ||
56 | + | ||
57 | + return jvm_gateway.jvm | ||
58 | + | ||
59 | + | ||
60 | +def get_jvm(): | ||
61 | + """현재 생성된 JVM 객체를 반환합니다. | ||
62 | + | ||
63 | + Returns: | ||
64 | + py4j.java_gateway.JavaGateway: 초기화된 JVM 객체 | ||
65 | + """ | ||
66 | + global jvm_gateway | ||
67 | + | ||
68 | + if jvm_gateway is None: | ||
69 | + return None | ||
70 | + | ||
71 | + return jvm_gateway.jvm |
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
1 | +VV 0 | ||
2 | +VCN 1 | ||
3 | +VX 2 | ||
4 | +VCP 3 | ||
5 | +NP 4 | ||
6 | +NNB 5 | ||
7 | +NR 6 | ||
8 | +NNG 7 | ||
9 | +JX 8 | ||
10 | +NNP 9 | ||
11 | +SE 10 | ||
12 | +SF 11 | ||
13 | +SH 12 | ||
14 | +XPN 13 | ||
15 | +BOE 14 | ||
16 | +SL 15 | ||
17 | +IC 16 | ||
18 | +EOE 44 | ||
19 | +SN 17 | ||
20 | +SO 18 | ||
21 | +SP 19 | ||
22 | +EC 20 | ||
23 | +JKB 21 | ||
24 | +SS 22 | ||
25 | +MM 23 | ||
26 | +EF 24 | ||
27 | +JKC 25 | ||
28 | +SW 26 | ||
29 | +JKG 27 | ||
30 | +XSA 28 | ||
31 | +VA 29 | ||
32 | +EP 30 | ||
33 | +JKO 31 | ||
34 | +JKQ 32 | ||
35 | +MAG 33 | ||
36 | +XSN 34 | ||
37 | +JKS 35 | ||
38 | +NA 36 | ||
39 | +JKV 37 | ||
40 | +MAJ 38 | ||
41 | +JC 39 | ||
42 | +XSV 40 | ||
43 | +XR 41 | ||
44 | +ETN 42 | ||
45 | +ETM 43 |
No preview for this file type
No preview for this file type
No preview for this file type
1 | +VV 0 | ||
2 | +VCN 1 | ||
3 | +VX 2 | ||
4 | +VCP 3 | ||
5 | +NP 4 | ||
6 | +NNB 5 | ||
7 | +NR 6 | ||
8 | +NNG 7 | ||
9 | +JX 8 | ||
10 | +NNP 9 | ||
11 | +SE 10 | ||
12 | +SF 11 | ||
13 | +SH 12 | ||
14 | +XPN 13 | ||
15 | +BOE 14 | ||
16 | +SL 15 | ||
17 | +IC 16 | ||
18 | +EOE 44 | ||
19 | +SN 17 | ||
20 | +SO 18 | ||
21 | +SP 19 | ||
22 | +EC 20 | ||
23 | +JKB 21 | ||
24 | +SS 22 | ||
25 | +MM 23 | ||
26 | +EF 24 | ||
27 | +JKC 25 | ||
28 | +SW 26 | ||
29 | +JKG 27 | ||
30 | +XSA 28 | ||
31 | +VA 29 | ||
32 | +EP 30 | ||
33 | +JKO 31 | ||
34 | +JKQ 32 | ||
35 | +MAG 33 | ||
36 | +XSN 34 | ||
37 | +JKS 35 | ||
38 | +NA 36 | ||
39 | +JKV 37 | ||
40 | +MAJ 38 | ||
41 | +JC 39 | ||
42 | +XSV 40 | ||
43 | +XR 41 | ||
44 | +ETN 42 | ||
45 | +ETM 43 |
No preview for this file type
File mode changed
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
1 | +""" This test filename has 'a' prefix because this test should run before running other tests """ | ||
2 | +import nose | ||
3 | + | ||
4 | +from PyKomoran.jvm import * | ||
5 | + | ||
6 | +global jvm_gateway | ||
7 | +if jvm_gateway is not None: | ||
8 | + jvm_gateway.shutdown() | ||
9 | +test_jvm1 = None | ||
10 | + | ||
11 | + | ||
12 | +def test_to_before_init_Jvm(): | ||
13 | + """ | ||
14 | + JVM Test: before jvm_init(), jvm_gateway should be None | ||
15 | + :return: | ||
16 | + """ | ||
17 | + global jvm_gateway | ||
18 | + | ||
19 | + assert jvm_gateway is None | ||
20 | + | ||
21 | + | ||
22 | +def test_to_get_Jvm_before_init(): | ||
23 | + """ | ||
24 | + JVM Test: before jvm_init(), get_jvm() should be None | ||
25 | + :return: | ||
26 | + """ | ||
27 | + global test_jvm1 | ||
28 | + | ||
29 | + test_jvm1 = get_jvm() | ||
30 | + | ||
31 | + assert test_jvm1 is None | ||
32 | + | ||
33 | + | ||
34 | +def test_to_init_Jvm(): | ||
35 | + """ | ||
36 | + JVM Test: when call jvm_init() first time, jvm object should be returned | ||
37 | + :return: | ||
38 | + """ | ||
39 | + global test_jvm1 | ||
40 | + | ||
41 | + test_jvm1 = init_jvm(1024) | ||
42 | + | ||
43 | + assert test_jvm1 is not None | ||
44 | + | ||
45 | + | ||
46 | +def test_to_duplicate_init_Jvm(): | ||
47 | + """ | ||
48 | + JVM Test: when call jvm_init() more than once, None should be returned | ||
49 | + :return: | ||
50 | + """ | ||
51 | + global test_jvm1 | ||
52 | + | ||
53 | + test_jvm2 = init_jvm(1024) | ||
54 | + test_jvm3 = init_jvm(1024) | ||
55 | + | ||
56 | + assert test_jvm1 is not None | ||
57 | + assert test_jvm2 is None | ||
58 | + assert test_jvm3 is None | ||
59 | + | ||
60 | + | ||
61 | +def test_to_get_Jvm_after_init(): | ||
62 | + """ | ||
63 | + JVM Test: when call get_jvm() after init_jvm(), jvm object should be returned | ||
64 | + :return: | ||
65 | + """ | ||
66 | + test_jvm2 = get_jvm() | ||
67 | + | ||
68 | + assert test_jvm2 is not None | ||
69 | + | ||
70 | + | ||
71 | +def test_to_duplicate_get_Jvm_after_init(): | ||
72 | + """ | ||
73 | + JVM Test: when call get_jvm() after init_jvm() more than once, returned values should be same | ||
74 | + :return: | ||
75 | + """ | ||
76 | + global test_jvm1 | ||
77 | + | ||
78 | + test_jvm2 = get_jvm() | ||
79 | + test_jvm3 = get_jvm() | ||
80 | + | ||
81 | + assert test_jvm1 is not None | ||
82 | + assert test_jvm2 is not None | ||
83 | + assert test_jvm3 is not None | ||
84 | + assert id(test_jvm1) == id(test_jvm2) | ||
85 | + assert id(test_jvm1) == id(test_jvm3) | ||
86 | + | ||
87 | + | ||
88 | +if __name__ == '__main__': | ||
89 | + nose.runmodule() |
This diff is collapsed. Click to expand it.
1 | +테스트 단어 | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | +감겼다 감/NNB 기/VCP 었/EP 다/EC | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | +import nose | ||
2 | + | ||
3 | +from PyKomoran.type import * | ||
4 | + | ||
5 | + | ||
6 | +def test_to_init_Token(): | ||
7 | + """ | ||
8 | + Type Test: init Token using given Dict, and validate given values with Token methods | ||
9 | + :return: | ||
10 | + """ | ||
11 | + # @formatter:off | ||
12 | + token = Token({ | ||
13 | + 'morph': '테스트', | ||
14 | + 'pos': 'NNP', | ||
15 | + 'beginIndex': 0, | ||
16 | + 'endIndex': 3 | ||
17 | + }) | ||
18 | + # @formatter:on | ||
19 | + | ||
20 | + assert token.get_morph() == '테스트' | ||
21 | + assert token.get_pos() == 'NNP' | ||
22 | + assert token.get_begin_index() == 0 | ||
23 | + assert token.get_end_index() == 3 | ||
24 | + assert str(token) == '테스트/NNP(0,3)' | ||
25 | + # @formatter:off | ||
26 | + assert token == Token({ | ||
27 | + 'morph': '테스트', | ||
28 | + 'pos': 'NNP', | ||
29 | + 'beginIndex': 0, | ||
30 | + 'endIndex': 3 | ||
31 | + }) | ||
32 | + # @formatter:on | ||
33 | + | ||
34 | + | ||
35 | +def test_to_init_Token_using_Pos_name(): | ||
36 | + """ | ||
37 | + Type Test: init Token using given Dict with use_pos_name parameter, and validate given values with Token methods | ||
38 | + :return: | ||
39 | + """ | ||
40 | + # @formatter:off | ||
41 | + token = Token({ | ||
42 | + 'morph': '테스트', | ||
43 | + 'pos': 'NNP', | ||
44 | + 'beginIndex': 0, | ||
45 | + 'endIndex': 3 | ||
46 | + }, use_pos_name=True) | ||
47 | + # @formatter:on | ||
48 | + | ||
49 | + assert token.get_morph() == '테스트' | ||
50 | + assert token.get_pos() == '고유 명사' | ||
51 | + assert token.get_begin_index() == 0 | ||
52 | + assert token.get_end_index() == 3 | ||
53 | + assert str(token) == '테스트/고유 명사(0,3)' | ||
54 | + # @formatter:off | ||
55 | + assert token == Token({ | ||
56 | + 'morph': '테스트', | ||
57 | + 'pos': 'NNP', | ||
58 | + 'beginIndex': 0, | ||
59 | + 'endIndex': 3 | ||
60 | + }) | ||
61 | + # @formatter:on | ||
62 | + | ||
63 | + | ||
64 | +def test_to_init_Pair(): | ||
65 | + """ | ||
66 | + Type Test: init Pair using given Dict, and validate given values with Pair methods | ||
67 | + :return: | ||
68 | + """ | ||
69 | + # @formatter:off | ||
70 | + pair = Pair({ | ||
71 | + 'first': '테스트', | ||
72 | + 'second': 'NNP' | ||
73 | + }) | ||
74 | + # @formatter:on | ||
75 | + | ||
76 | + assert pair.get_first() == '테스트' | ||
77 | + assert pair.get_second() == 'NNP' | ||
78 | + assert str(pair) == '테스트/NNP' | ||
79 | + # @formatter:off | ||
80 | + assert pair == Pair({ | ||
81 | + 'first': '테스트', | ||
82 | + 'second': 'NNP' | ||
83 | + }) | ||
84 | + # @formatter:on | ||
85 | + | ||
86 | + | ||
87 | +def test_to_pos_table(): | ||
88 | + """ | ||
89 | + Type Test: check pos_table is initialized well | ||
90 | + :return: | ||
91 | + """ | ||
92 | + pos_table = Pos() | ||
93 | + | ||
94 | + assert len(pos_table) == 45 | ||
95 | + assert pos_table['NNP'] == '고유 명사' | ||
96 | + assert 'NA' in pos_table | ||
97 | + assert 'ABC' not in pos_table | ||
98 | + | ||
99 | + | ||
100 | +if __name__ == '__main__': | ||
101 | + nose.runmodule() |
src/venv/Lib/site-packages/PyKomoran/type.py
0 → 100644
1 | +import os | ||
2 | + | ||
3 | +__all__ = ['Token', 'Pair', 'Pos', 'DEFAULT_MODEL'] | ||
4 | + | ||
5 | + | ||
6 | +class Token: | ||
7 | + """Komoran(Java)의 Token Class에 대응합니다. 형태소 분석 결과 저장을 위해 사용합니다. | ||
8 | + | ||
9 | + Args: | ||
10 | + token_in_dict (dict): Token으로 만들 Dict | ||
11 | + use_pos_name (bool): Token 출력 시 품사 이름 사용 여부 (기본값: ``False``) \n | ||
12 | + ``True`` 인 경우 품사 기호 대신 품사 이름을 사용합니다. \n | ||
13 | + ``False`` 인 경우 품사 기호를 사용합니다. | ||
14 | + | ||
15 | + Examples: | ||
16 | + | ||
17 | + >>> # komoran은 Komoran 객체입니다. | ||
18 | + >>> tokens = komoran.get_token_list("① 대한민국은 민주공화국이다.") | ||
19 | + >>> token = tokens[1] | ||
20 | + >>> token | ||
21 | + 대한민국/NNP(2,6) | ||
22 | + >>> token.get_morph() | ||
23 | + '대한민국' | ||
24 | + >>> token.get_pos() | ||
25 | + 'NNP' | ||
26 | + >>> token.get_begin_index() | ||
27 | + 2 | ||
28 | + >>> token.get_end_index() | ||
29 | + 6 | ||
30 | + | ||
31 | + """ | ||
32 | + def __init__(self, token_in_dict, use_pos_name=False): | ||
33 | + self.pos_table = Pos() | ||
34 | + self.morph = token_in_dict.get('morph') | ||
35 | + self.pos = token_in_dict.get('pos') | ||
36 | + self.begin_index = token_in_dict.get('beginIndex') | ||
37 | + self.end_index = token_in_dict.get('endIndex') | ||
38 | + self.use_pos_name = use_pos_name | ||
39 | + | ||
40 | + def get_morph(self): | ||
41 | + """형태소를 반환합니다. | ||
42 | + | ||
43 | + Returns: | ||
44 | + str: 형태소 | ||
45 | + """ | ||
46 | + return self.morph | ||
47 | + | ||
48 | + def get_pos(self): | ||
49 | + """품사를 반환합니다. | ||
50 | + | ||
51 | + Returns: | ||
52 | + str: 품사 기호 (또는 이름) | ||
53 | + """ | ||
54 | + if self.use_pos_name: | ||
55 | + return self.pos_table[self.pos] | ||
56 | + return self.pos | ||
57 | + | ||
58 | + def get_begin_index(self): | ||
59 | + """형태소의 시작 인덱스를 반환합니다. | ||
60 | + | ||
61 | + Returns: | ||
62 | + int: 시작 인덱스 | ||
63 | + """ | ||
64 | + return self.begin_index | ||
65 | + | ||
66 | + def get_end_index(self): | ||
67 | + """형태소의 종료 인덱스를 반환합니다. | ||
68 | + | ||
69 | + Returns: | ||
70 | + int: 종료 인덱스 | ||
71 | + """ | ||
72 | + return self.end_index | ||
73 | + | ||
74 | + def __eq__(self, other): | ||
75 | + return (self.morph == other.get_morph() | ||
76 | + and self.pos == other.get_pos() | ||
77 | + and self.begin_index == other.get_begin_index() | ||
78 | + and self.end_index == other.get_end_index()) | ||
79 | + | ||
80 | + def __str__(self): | ||
81 | + return "{0}/{1}({2},{3})".format(self.morph, self.get_pos(), self.begin_index, self.end_index) | ||
82 | + | ||
83 | + def __repr__(self): | ||
84 | + return self.__str__() | ||
85 | + | ||
86 | + | ||
87 | +class Pair: | ||
88 | + """Komoran(Java)의 Pair Class에 대응합니다. 형태소 분석 결과 저장을 위해 사용합니다. | ||
89 | + | ||
90 | + Args: | ||
91 | + pair_in_dict (dict): Pair로 만들 Dict | ||
92 | + | ||
93 | + Examples: | ||
94 | + | ||
95 | + >>> # komoran은 Komoran 객체입니다. | ||
96 | + >>> pairs = komoran.get_list("① 대한민국은 민주공화국이다.") | ||
97 | + >>> pair = pairs[1] | ||
98 | + >>> pair | ||
99 | + 대한민국/NNP | ||
100 | + >>> pair.get_first() | ||
101 | + '대한민국' | ||
102 | + >>> pair.get_second() | ||
103 | + 'NNP' | ||
104 | + | ||
105 | + """ | ||
106 | + def __init__(self, pair_in_dict): | ||
107 | + self.first = pair_in_dict.get('first') | ||
108 | + self.second = pair_in_dict.get('second') | ||
109 | + | ||
110 | + def get_first(self): | ||
111 | + """형태소를 반환합니다. | ||
112 | + | ||
113 | + Returns: | ||
114 | + str: 형태소 | ||
115 | + """ | ||
116 | + return self.first | ||
117 | + | ||
118 | + def get_second(self): | ||
119 | + """품사를 반환합니다. | ||
120 | + | ||
121 | + Returns: | ||
122 | + str: 품사 기호 | ||
123 | + """ | ||
124 | + return self.second | ||
125 | + | ||
126 | + def __eq__(self, other): | ||
127 | + return (self.first == other.get_first() | ||
128 | + and self.second == other.get_second()) | ||
129 | + | ||
130 | + def __str__(self): | ||
131 | + return "{0}/{1}".format(self.first, self.second) | ||
132 | + | ||
133 | + def __repr__(self): | ||
134 | + return self.__str__() | ||
135 | + | ||
136 | + | ||
137 | +class Pos: | ||
138 | + """형태소 분석 결과로 나올 수 있는 모든 품사들에 대한 정보를 갖고 있습니다. \n | ||
139 | + 전체 품사표는 :doc:`/firststep/postypes` 를 참고해주세요. | ||
140 | + | ||
141 | + Examples: | ||
142 | + | ||
143 | + >>> pos_table = Pos() | ||
144 | + >>> pos['NNP'] | ||
145 | + '고유 명사' | ||
146 | + >>> pos['SW'] | ||
147 | + '기타기호(논리수학기호,화폐기호)' | ||
148 | + >>> len(pos_table) | ||
149 | + 45 | ||
150 | + | ||
151 | + """ | ||
152 | + def __init__(self): | ||
153 | + self.pos_table = { | ||
154 | + # 체언 | ||
155 | + 'NNG': '일반 명사', | ||
156 | + 'NNP': '고유 명사', | ||
157 | + 'NNB': '의존 명사', | ||
158 | + 'NP': '대명사', | ||
159 | + 'NR': '수사', | ||
160 | + | ||
161 | + # 용언 | ||
162 | + 'VV': '동사', | ||
163 | + 'VA': '형용사', | ||
164 | + 'VX': '보조 용언', | ||
165 | + 'VCP': '긍정 지정사', | ||
166 | + 'VCN': '부정 지정사', | ||
167 | + | ||
168 | + # 수식언 | ||
169 | + 'MM': '관형사', | ||
170 | + 'MAG': '일반 부사', | ||
171 | + 'MAJ': '접속 부사', | ||
172 | + | ||
173 | + # 독립언 | ||
174 | + 'IC': '감탄사', | ||
175 | + | ||
176 | + # 관계언 | ||
177 | + 'JKS': '주격 조사', | ||
178 | + 'JKC': '보격 조사', | ||
179 | + 'JKG': '관형격 조사', | ||
180 | + 'JKO': '목적격 조사', | ||
181 | + 'JKB': '부사격 조사', | ||
182 | + 'JKV': '호격 조사', | ||
183 | + 'JKQ': '인용격 조사', | ||
184 | + 'JX': '보조사', | ||
185 | + 'JC': '접속 조사', | ||
186 | + | ||
187 | + # 의존형태 | ||
188 | + 'EP': '선어말 어미', | ||
189 | + 'EF': '종결 어미', | ||
190 | + 'EC': '연결 어미', | ||
191 | + 'ETN': '명사형 전성 어미', | ||
192 | + 'ETM': '관형형 전성 어미 ', | ||
193 | + 'XPN': '체언 접두사', | ||
194 | + 'XSN': '명사 파생 접미사', | ||
195 | + 'XSV': '동사 파생 접미사', | ||
196 | + 'XSA': '형용사 파생 접미사', | ||
197 | + 'XR': '어근', | ||
198 | + | ||
199 | + # 기호 | ||
200 | + 'SF': '마침표,물음표,느낌표', | ||
201 | + 'SP': '쉼표,가운뎃점,콜론,빗금', | ||
202 | + 'SS': '따옴표,괄호표,줄표', | ||
203 | + 'SE': '줄임표', | ||
204 | + 'SO': '붙임표(물결,숨김,빠짐)', | ||
205 | + 'SL': '외국어', | ||
206 | + 'SH': '한자', | ||
207 | + 'SW': '기타기호(논리수학기호,화폐기호)', | ||
208 | + 'NF': '명사추정범주', | ||
209 | + 'NV': '용언추정범주', | ||
210 | + 'SN': '숫자', | ||
211 | + 'NA': '분석불능범주' | ||
212 | + } | ||
213 | + self.pos_type = self.pos_table.keys() | ||
214 | + self.pos_size = len(self.pos_type) | ||
215 | + | ||
216 | + def __getitem__(self, pos): | ||
217 | + if pos in self.pos_type: | ||
218 | + return self.pos_table[pos] | ||
219 | + else: | ||
220 | + return '' | ||
221 | + | ||
222 | + def __len__(self): | ||
223 | + return self.pos_size | ||
224 | + | ||
225 | + def __contains__(self, pos): | ||
226 | + return pos in self.pos_type | ||
227 | + | ||
228 | + def __iter__(self): | ||
229 | + return iter(self.pos_table) | ||
230 | + | ||
231 | + def __str__(self): | ||
232 | + return str(self.pos_table) | ||
233 | + | ||
234 | + def __repr__(self): | ||
235 | + return repr(self.pos_table) | ||
236 | + | ||
237 | + def values(self): | ||
238 | + return self.pos_table.values() | ||
239 | + | ||
240 | + def keys(self): | ||
241 | + return self.pos_table.keys() | ||
242 | + | ||
243 | + def items(self): | ||
244 | + return self.pos_table.items() | ||
245 | + | ||
246 | + def has_key(self, key): | ||
247 | + return key in self.pos_type | ||
248 | + | ||
249 | + | ||
250 | +class DefaultModel: | ||
251 | + def __init__(self): | ||
252 | + base_path = os.path.dirname(os.path.realpath(__file__)) | ||
253 | + | ||
254 | + self._models = { | ||
255 | + 'FULL': '{0}{1}models_full'.format(base_path, os.sep), | ||
256 | + 'LIGHT': "{0}{1}models_light".format(base_path, os.sep) | ||
257 | + } | ||
258 | + | ||
259 | + def __getitem__(self, model): | ||
260 | + if model in self._models.keys(): | ||
261 | + return self._models[model] | ||
262 | + else: | ||
263 | + return '' | ||
264 | + | ||
265 | + def __contains__(self, model): | ||
266 | + return model in self._models | ||
267 | + | ||
268 | + def __str__(self): | ||
269 | + return str(self._models) | ||
270 | + | ||
271 | + def __repr__(self): | ||
272 | + return repr(self._models) | ||
273 | + | ||
274 | +DEFAULT_MODEL = DefaultModel() | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | +pip |
1 | +Copyright 2007 Pallets | ||
2 | + | ||
3 | +Redistribution and use in source and binary forms, with or without | ||
4 | +modification, are permitted provided that the following conditions are | ||
5 | +met: | ||
6 | + | ||
7 | +1. Redistributions of source code must retain the above copyright | ||
8 | + notice, this list of conditions and the following disclaimer. | ||
9 | + | ||
10 | +2. Redistributions in binary form must reproduce the above copyright | ||
11 | + notice, this list of conditions and the following disclaimer in the | ||
12 | + documentation and/or other materials provided with the distribution. | ||
13 | + | ||
14 | +3. Neither the name of the copyright holder nor the names of its | ||
15 | + contributors may be used to endorse or promote products derived from | ||
16 | + this software without specific prior written permission. | ||
17 | + | ||
18 | +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
19 | +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
20 | +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A | ||
21 | +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
22 | +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
23 | +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED | ||
24 | +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | ||
25 | +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | ||
26 | +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | ||
27 | +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
28 | +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
1 | +Metadata-Version: 2.1 | ||
2 | +Name: Werkzeug | ||
3 | +Version: 1.0.1 | ||
4 | +Summary: The comprehensive WSGI web application library. | ||
5 | +Home-page: https://palletsprojects.com/p/werkzeug/ | ||
6 | +Author: Armin Ronacher | ||
7 | +Author-email: armin.ronacher@active-4.com | ||
8 | +Maintainer: Pallets | ||
9 | +Maintainer-email: contact@palletsprojects.com | ||
10 | +License: BSD-3-Clause | ||
11 | +Project-URL: Documentation, https://werkzeug.palletsprojects.com/ | ||
12 | +Project-URL: Code, https://github.com/pallets/werkzeug | ||
13 | +Project-URL: Issue tracker, https://github.com/pallets/werkzeug/issues | ||
14 | +Platform: UNKNOWN | ||
15 | +Classifier: Development Status :: 5 - Production/Stable | ||
16 | +Classifier: Environment :: Web Environment | ||
17 | +Classifier: Intended Audience :: Developers | ||
18 | +Classifier: License :: OSI Approved :: BSD License | ||
19 | +Classifier: Operating System :: OS Independent | ||
20 | +Classifier: Programming Language :: Python | ||
21 | +Classifier: Programming Language :: Python :: 2 | ||
22 | +Classifier: Programming Language :: Python :: 2.7 | ||
23 | +Classifier: Programming Language :: Python :: 3 | ||
24 | +Classifier: Programming Language :: Python :: 3.5 | ||
25 | +Classifier: Programming Language :: Python :: 3.6 | ||
26 | +Classifier: Programming Language :: Python :: 3.7 | ||
27 | +Classifier: Programming Language :: Python :: 3.8 | ||
28 | +Classifier: Programming Language :: Python :: Implementation :: CPython | ||
29 | +Classifier: Programming Language :: Python :: Implementation :: PyPy | ||
30 | +Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content | ||
31 | +Classifier: Topic :: Internet :: WWW/HTTP :: WSGI | ||
32 | +Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application | ||
33 | +Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Middleware | ||
34 | +Classifier: Topic :: Software Development :: Libraries :: Application Frameworks | ||
35 | +Classifier: Topic :: Software Development :: Libraries :: Python Modules | ||
36 | +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.* | ||
37 | +Description-Content-Type: text/x-rst | ||
38 | +Provides-Extra: dev | ||
39 | +Requires-Dist: pytest ; extra == 'dev' | ||
40 | +Requires-Dist: pytest-timeout ; extra == 'dev' | ||
41 | +Requires-Dist: coverage ; extra == 'dev' | ||
42 | +Requires-Dist: tox ; extra == 'dev' | ||
43 | +Requires-Dist: sphinx ; extra == 'dev' | ||
44 | +Requires-Dist: pallets-sphinx-themes ; extra == 'dev' | ||
45 | +Requires-Dist: sphinx-issues ; extra == 'dev' | ||
46 | +Provides-Extra: watchdog | ||
47 | +Requires-Dist: watchdog ; extra == 'watchdog' | ||
48 | + | ||
49 | +Werkzeug | ||
50 | +======== | ||
51 | + | ||
52 | +*werkzeug* German noun: "tool". Etymology: *werk* ("work"), *zeug* ("stuff") | ||
53 | + | ||
54 | +Werkzeug is a comprehensive `WSGI`_ web application library. It began as | ||
55 | +a simple collection of various utilities for WSGI applications and has | ||
56 | +become one of the most advanced WSGI utility libraries. | ||
57 | + | ||
58 | +It includes: | ||
59 | + | ||
60 | +- An interactive debugger that allows inspecting stack traces and | ||
61 | + source code in the browser with an interactive interpreter for any | ||
62 | + frame in the stack. | ||
63 | +- A full-featured request object with objects to interact with | ||
64 | + headers, query args, form data, files, and cookies. | ||
65 | +- A response object that can wrap other WSGI applications and handle | ||
66 | + streaming data. | ||
67 | +- A routing system for matching URLs to endpoints and generating URLs | ||
68 | + for endpoints, with an extensible system for capturing variables | ||
69 | + from URLs. | ||
70 | +- HTTP utilities to handle entity tags, cache control, dates, user | ||
71 | + agents, cookies, files, and more. | ||
72 | +- A threaded WSGI server for use while developing applications | ||
73 | + locally. | ||
74 | +- A test client for simulating HTTP requests during testing without | ||
75 | + requiring running a server. | ||
76 | + | ||
77 | +Werkzeug is Unicode aware and doesn't enforce any dependencies. It is up | ||
78 | +to the developer to choose a template engine, database adapter, and even | ||
79 | +how to handle requests. It can be used to build all sorts of end user | ||
80 | +applications such as blogs, wikis, or bulletin boards. | ||
81 | + | ||
82 | +`Flask`_ wraps Werkzeug, using it to handle the details of WSGI while | ||
83 | +providing more structure and patterns for defining powerful | ||
84 | +applications. | ||
85 | + | ||
86 | + | ||
87 | +Installing | ||
88 | +---------- | ||
89 | + | ||
90 | +Install and update using `pip`_: | ||
91 | + | ||
92 | +.. code-block:: text | ||
93 | + | ||
94 | + pip install -U Werkzeug | ||
95 | + | ||
96 | + | ||
97 | +A Simple Example | ||
98 | +---------------- | ||
99 | + | ||
100 | +.. code-block:: python | ||
101 | + | ||
102 | + from werkzeug.wrappers import Request, Response | ||
103 | + | ||
104 | + @Request.application | ||
105 | + def application(request): | ||
106 | + return Response('Hello, World!') | ||
107 | + | ||
108 | + if __name__ == '__main__': | ||
109 | + from werkzeug.serving import run_simple | ||
110 | + run_simple('localhost', 4000, application) | ||
111 | + | ||
112 | + | ||
113 | +Links | ||
114 | +----- | ||
115 | + | ||
116 | +- Website: https://palletsprojects.com/p/werkzeug/ | ||
117 | +- Documentation: https://werkzeug.palletsprojects.com/ | ||
118 | +- Releases: https://pypi.org/project/Werkzeug/ | ||
119 | +- Code: https://github.com/pallets/werkzeug | ||
120 | +- Issue tracker: https://github.com/pallets/werkzeug/issues | ||
121 | +- Test status: https://dev.azure.com/pallets/werkzeug/_build | ||
122 | +- Official chat: https://discord.gg/t6rrQZH | ||
123 | + | ||
124 | +.. _WSGI: https://wsgi.readthedocs.io/en/latest/ | ||
125 | +.. _Flask: https://www.palletsprojects.com/p/flask/ | ||
126 | +.. _pip: https://pip.pypa.io/en/stable/quickstart/ | ||
127 | + | ||
128 | + |
1 | +Werkzeug-1.0.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 | ||
2 | +Werkzeug-1.0.1.dist-info/LICENSE.rst,sha256=O0nc7kEF6ze6wQ-vG-JgQI_oXSUrjp3y4JefweCUQ3s,1475 | ||
3 | +Werkzeug-1.0.1.dist-info/METADATA,sha256=d0zmVNa4UC2-nAo2A8_81oiy123D6JTGRSuY_Ymgyt4,4730 | ||
4 | +Werkzeug-1.0.1.dist-info/RECORD,, | ||
5 | +Werkzeug-1.0.1.dist-info/WHEEL,sha256=kGT74LWyRUZrL4VgLh6_g12IeVl_9u9ZVhadrgXZUEY,110 | ||
6 | +Werkzeug-1.0.1.dist-info/top_level.txt,sha256=QRyj2VjwJoQkrwjwFIOlB8Xg3r9un0NtqVHQF-15xaw,9 | ||
7 | +werkzeug/__init__.py,sha256=rb-yPiXOjTLbtDOl5fQp5hN7oBdaoXAoQ-slAAvfZAo,502 | ||
8 | +werkzeug/__pycache__/__init__.cpython-38.pyc,, | ||
9 | +werkzeug/__pycache__/_compat.cpython-38.pyc,, | ||
10 | +werkzeug/__pycache__/_internal.cpython-38.pyc,, | ||
11 | +werkzeug/__pycache__/_reloader.cpython-38.pyc,, | ||
12 | +werkzeug/__pycache__/datastructures.cpython-38.pyc,, | ||
13 | +werkzeug/__pycache__/exceptions.cpython-38.pyc,, | ||
14 | +werkzeug/__pycache__/filesystem.cpython-38.pyc,, | ||
15 | +werkzeug/__pycache__/formparser.cpython-38.pyc,, | ||
16 | +werkzeug/__pycache__/http.cpython-38.pyc,, | ||
17 | +werkzeug/__pycache__/local.cpython-38.pyc,, | ||
18 | +werkzeug/__pycache__/posixemulation.cpython-38.pyc,, | ||
19 | +werkzeug/__pycache__/routing.cpython-38.pyc,, | ||
20 | +werkzeug/__pycache__/security.cpython-38.pyc,, | ||
21 | +werkzeug/__pycache__/serving.cpython-38.pyc,, | ||
22 | +werkzeug/__pycache__/test.cpython-38.pyc,, | ||
23 | +werkzeug/__pycache__/testapp.cpython-38.pyc,, | ||
24 | +werkzeug/__pycache__/urls.cpython-38.pyc,, | ||
25 | +werkzeug/__pycache__/useragents.cpython-38.pyc,, | ||
26 | +werkzeug/__pycache__/utils.cpython-38.pyc,, | ||
27 | +werkzeug/__pycache__/wsgi.cpython-38.pyc,, | ||
28 | +werkzeug/_compat.py,sha256=zjufTNrhQ8BgYSGSh-sVu6iW3r3O9WzjE9j-qJobx-g,6671 | ||
29 | +werkzeug/_internal.py,sha256=d_4AqheyS6dHMViwdc0drFrjs67ZzT6Ej2gWf-Z-Iys,14351 | ||
30 | +werkzeug/_reloader.py,sha256=I3mg3oRQ0lLzl06oEoVopN3bN7CtINuuUQdqDcmTnEs,11531 | ||
31 | +werkzeug/datastructures.py,sha256=AonxOcwU0TPMEzfKF1368ySULxHgxE-JE-DEAGdo2ts,100480 | ||
32 | +werkzeug/debug/__init__.py,sha256=3RtUMc5Y9hYyK11ugHltgkQ9Dt-ViR945Vy_X5NV7zU,17289 | ||
33 | +werkzeug/debug/__pycache__/__init__.cpython-38.pyc,, | ||
34 | +werkzeug/debug/__pycache__/console.cpython-38.pyc,, | ||
35 | +werkzeug/debug/__pycache__/repr.cpython-38.pyc,, | ||
36 | +werkzeug/debug/__pycache__/tbtools.cpython-38.pyc,, | ||
37 | +werkzeug/debug/console.py,sha256=OATaO7KHYMqpbzIFe1HeW9Mnl3wZgA3jMQoGDPn5URc,5488 | ||
38 | +werkzeug/debug/repr.py,sha256=lIwuhbyrMwVe3P_cFqNyqzHL7P93TLKod7lw9clydEw,9621 | ||
39 | +werkzeug/debug/shared/FONT_LICENSE,sha256=LwAVEI1oYnvXiNMT9SnCH_TaLCxCpeHziDrMg0gPkAI,4673 | ||
40 | +werkzeug/debug/shared/console.png,sha256=bxax6RXXlvOij_KeqvSNX0ojJf83YbnZ7my-3Gx9w2A,507 | ||
41 | +werkzeug/debug/shared/debugger.js,sha256=rOhqZMRfpZnnu6_XCGn6wMWPhtfwRAcyZKksdIxPJas,6400 | ||
42 | +werkzeug/debug/shared/jquery.js,sha256=CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo,88145 | ||
43 | +werkzeug/debug/shared/less.png,sha256=-4-kNRaXJSONVLahrQKUxMwXGm9R4OnZ9SxDGpHlIR4,191 | ||
44 | +werkzeug/debug/shared/more.png,sha256=GngN7CioHQoV58rH6ojnkYi8c_qED2Aka5FO5UXrReY,200 | ||
45 | +werkzeug/debug/shared/source.png,sha256=RoGcBTE4CyCB85GBuDGTFlAnUqxwTBiIfDqW15EpnUQ,818 | ||
46 | +werkzeug/debug/shared/style.css,sha256=gZ9uhmb5zj3XLuT9RvnMp6jMINgQ-VVBCp-2AZbG3YQ,6604 | ||
47 | +werkzeug/debug/shared/ubuntu.ttf,sha256=1eaHFyepmy4FyDvjLVzpITrGEBu_CZYY94jE0nED1c0,70220 | ||
48 | +werkzeug/debug/tbtools.py,sha256=2iJ8RURUZUSbopOIehy53LnVJWx47lsHN2V2l6hc7Wc,20363 | ||
49 | +werkzeug/exceptions.py,sha256=UTYSDkmAsH-vt8VSidlEffwqBVNXuT7bRg-_NqgUe8A,25188 | ||
50 | +werkzeug/filesystem.py,sha256=HzKl-j0Hd8Jl66j778UbPTAYNnY6vUZgYLlBZ0e7uw0,2101 | ||
51 | +werkzeug/formparser.py,sha256=Sto0jZid9im9ZVIf56vilCdyX-arK33wSftkYsLCnzo,21788 | ||
52 | +werkzeug/http.py,sha256=KVRV3yFK14PJeI56qClEq4qxFdvKUQVy4C_dwuWz9_Q,43107 | ||
53 | +werkzeug/local.py,sha256=_Tk7gB238pPWUU7habxFkZF02fiCMRVW6d62YWL1Rh0,14371 | ||
54 | +werkzeug/middleware/__init__.py,sha256=f1SFZo67IlW4k1uqKzNHxYQlsakUS-D6KK_j0e3jjwQ,549 | ||
55 | +werkzeug/middleware/__pycache__/__init__.cpython-38.pyc,, | ||
56 | +werkzeug/middleware/__pycache__/dispatcher.cpython-38.pyc,, | ||
57 | +werkzeug/middleware/__pycache__/http_proxy.cpython-38.pyc,, | ||
58 | +werkzeug/middleware/__pycache__/lint.cpython-38.pyc,, | ||
59 | +werkzeug/middleware/__pycache__/profiler.cpython-38.pyc,, | ||
60 | +werkzeug/middleware/__pycache__/proxy_fix.cpython-38.pyc,, | ||
61 | +werkzeug/middleware/__pycache__/shared_data.cpython-38.pyc,, | ||
62 | +werkzeug/middleware/dispatcher.py,sha256=_-KoMzHtcISHS7ouWKAOraqlCLprdh83YOAn_8DjLp8,2240 | ||
63 | +werkzeug/middleware/http_proxy.py,sha256=lRjTdMmghHiZuZrS7_UJ3gZc-vlFizhBbFZ-XZPLwIA,7117 | ||
64 | +werkzeug/middleware/lint.py,sha256=ItTwuWJnflF8xMT1uqU_Ty1ryhux-CjeUfskqaUpxsw,12967 | ||
65 | +werkzeug/middleware/profiler.py,sha256=8B_s23d6BGrU_q54gJsm6kcCbOJbTSqrXCsioHON0Xs,4471 | ||
66 | +werkzeug/middleware/proxy_fix.py,sha256=K5oZ3DPXOzdZi0Xba5zW7ClPOxgUuqXHQHvY2-AWCGw,6431 | ||
67 | +werkzeug/middleware/shared_data.py,sha256=sPSRTKqtKSVBUyN8fr6jOJbdq9cdOLu6pg3gz4Y_1Xo,9599 | ||
68 | +werkzeug/posixemulation.py,sha256=gSSiv1SCmOyzOM_nq1ZaZCtxP__C5MeDJl_4yXJmi4Q,3541 | ||
69 | +werkzeug/routing.py,sha256=6-iZ7CKeUILYAehoKXLbmi5E6LgLbwuzUh8TNplnf5Q,79019 | ||
70 | +werkzeug/security.py,sha256=81149MplFq7-hD4RK4sKp9kzXXejjV9D4lWBzaRyeQ8,8106 | ||
71 | +werkzeug/serving.py,sha256=YvTqvurA-Mnj8mkqRe2kBdVr2ap4ibCq1ByQjOA6g1w,38694 | ||
72 | +werkzeug/test.py,sha256=GJ9kxTMSJ-nB7kfGtxuROr9JGmXxDRev-2U1SkeUJGE,39564 | ||
73 | +werkzeug/testapp.py,sha256=bHekqMsqRfVxwgFbvOMem-DYa_sdB7R47yUXpt1RUTo,9329 | ||
74 | +werkzeug/urls.py,sha256=T8-hV_1vwhu6xhX93FwsHteK-W-kIE2orj5WoMf-WFw,39322 | ||
75 | +werkzeug/useragents.py,sha256=TSoGv5IOvP375eK5gLLpsLQCeUgTR6sO1WftmAP_YvM,5563 | ||
76 | +werkzeug/utils.py,sha256=hrVK4u_wi8z9viBO9bgOLlm1aaIvCpn-p2d1FeZQDEo,25251 | ||
77 | +werkzeug/wrappers/__init__.py,sha256=S4VioKAmF_av9Ec9zQvG71X1EOkYfPx1TYck9jyDiyY,1384 | ||
78 | +werkzeug/wrappers/__pycache__/__init__.cpython-38.pyc,, | ||
79 | +werkzeug/wrappers/__pycache__/accept.cpython-38.pyc,, | ||
80 | +werkzeug/wrappers/__pycache__/auth.cpython-38.pyc,, | ||
81 | +werkzeug/wrappers/__pycache__/base_request.cpython-38.pyc,, | ||
82 | +werkzeug/wrappers/__pycache__/base_response.cpython-38.pyc,, | ||
83 | +werkzeug/wrappers/__pycache__/common_descriptors.cpython-38.pyc,, | ||
84 | +werkzeug/wrappers/__pycache__/cors.cpython-38.pyc,, | ||
85 | +werkzeug/wrappers/__pycache__/etag.cpython-38.pyc,, | ||
86 | +werkzeug/wrappers/__pycache__/json.cpython-38.pyc,, | ||
87 | +werkzeug/wrappers/__pycache__/request.cpython-38.pyc,, | ||
88 | +werkzeug/wrappers/__pycache__/response.cpython-38.pyc,, | ||
89 | +werkzeug/wrappers/__pycache__/user_agent.cpython-38.pyc,, | ||
90 | +werkzeug/wrappers/accept.py,sha256=TIvjUc0g73fhTWX54wg_D9NNzKvpnG1X8u1w26tK1o8,1760 | ||
91 | +werkzeug/wrappers/auth.py,sha256=Pmn6iaGHBrUyHbJpW0lZhO_q9RVoAa5QalaTqcavdAI,1158 | ||
92 | +werkzeug/wrappers/base_request.py,sha256=4TuGlKWeKQdlq4eU94hJYcXSfWo8Rk7CS1Ef5lJ3ZM0,26012 | ||
93 | +werkzeug/wrappers/base_response.py,sha256=JTxJZ8o-IBetpoWJqt2HFwPaNWNDAlM3_GXJe1Whw80,27784 | ||
94 | +werkzeug/wrappers/common_descriptors.py,sha256=X2Ktd5zUWsmcd4ciaF62Dd8Lru9pLGP_XDUNukc8cXs,12829 | ||
95 | +werkzeug/wrappers/cors.py,sha256=XMbaCol4dWTGvb-dCJBoN0p3JX91v93AIAHd7tnB3L4,3466 | ||
96 | +werkzeug/wrappers/etag.py,sha256=XMXtyfByBsOjxwaX8U7ZtUY7JXkbQLP45oXZ0qkyTNs,12217 | ||
97 | +werkzeug/wrappers/json.py,sha256=HvK_A4NpO0sLqgb10sTJcoZydYOwyNiPCJPV7SVgcgE,4343 | ||
98 | +werkzeug/wrappers/request.py,sha256=QbHGqDpGPN684pnOPEokwkPESfm-NnfYM7ydOMxW_NI,1514 | ||
99 | +werkzeug/wrappers/response.py,sha256=Oqv8TMG_dnOKTq_V30ddgkO5B7IJhkVPODvm7cbhZ3c,2524 | ||
100 | +werkzeug/wrappers/user_agent.py,sha256=YJb-vr12cujG7sQMG9V89VsJa-03SWSenhg1W4cT0EY,435 | ||
101 | +werkzeug/wsgi.py,sha256=ZGk85NzRyQTzkYis-xl8V9ydJgfClBdStvhzDzER2mw,34367 |
1 | +werkzeug |
No preview for this file type
No preview for this file type
No preview for this file type
1 | +pip |
1 | +Copyright 2014 Pallets | ||
2 | + | ||
3 | +Redistribution and use in source and binary forms, with or without | ||
4 | +modification, are permitted provided that the following conditions are | ||
5 | +met: | ||
6 | + | ||
7 | +1. Redistributions of source code must retain the above copyright | ||
8 | + notice, this list of conditions and the following disclaimer. | ||
9 | + | ||
10 | +2. Redistributions in binary form must reproduce the above copyright | ||
11 | + notice, this list of conditions and the following disclaimer in the | ||
12 | + documentation and/or other materials provided with the distribution. | ||
13 | + | ||
14 | +3. Neither the name of the copyright holder nor the names of its | ||
15 | + contributors may be used to endorse or promote products derived from | ||
16 | + this software without specific prior written permission. | ||
17 | + | ||
18 | +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
19 | +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
20 | +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A | ||
21 | +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
22 | +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
23 | +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED | ||
24 | +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | ||
25 | +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | ||
26 | +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | ||
27 | +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
28 | +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
1 | +Metadata-Version: 2.1 | ||
2 | +Name: click | ||
3 | +Version: 7.1.2 | ||
4 | +Summary: Composable command line interface toolkit | ||
5 | +Home-page: https://palletsprojects.com/p/click/ | ||
6 | +Maintainer: Pallets | ||
7 | +Maintainer-email: contact@palletsprojects.com | ||
8 | +License: BSD-3-Clause | ||
9 | +Project-URL: Documentation, https://click.palletsprojects.com/ | ||
10 | +Project-URL: Code, https://github.com/pallets/click | ||
11 | +Project-URL: Issue tracker, https://github.com/pallets/click/issues | ||
12 | +Platform: UNKNOWN | ||
13 | +Classifier: Development Status :: 5 - Production/Stable | ||
14 | +Classifier: Intended Audience :: Developers | ||
15 | +Classifier: License :: OSI Approved :: BSD License | ||
16 | +Classifier: Operating System :: OS Independent | ||
17 | +Classifier: Programming Language :: Python | ||
18 | +Classifier: Programming Language :: Python :: 2 | ||
19 | +Classifier: Programming Language :: Python :: 3 | ||
20 | +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.* | ||
21 | + | ||
22 | +\$ click\_ | ||
23 | +========== | ||
24 | + | ||
25 | +Click is a Python package for creating beautiful command line interfaces | ||
26 | +in a composable way with as little code as necessary. It's the "Command | ||
27 | +Line Interface Creation Kit". It's highly configurable but comes with | ||
28 | +sensible defaults out of the box. | ||
29 | + | ||
30 | +It aims to make the process of writing command line tools quick and fun | ||
31 | +while also preventing any frustration caused by the inability to | ||
32 | +implement an intended CLI API. | ||
33 | + | ||
34 | +Click in three points: | ||
35 | + | ||
36 | +- Arbitrary nesting of commands | ||
37 | +- Automatic help page generation | ||
38 | +- Supports lazy loading of subcommands at runtime | ||
39 | + | ||
40 | + | ||
41 | +Installing | ||
42 | +---------- | ||
43 | + | ||
44 | +Install and update using `pip`_: | ||
45 | + | ||
46 | +.. code-block:: text | ||
47 | + | ||
48 | + $ pip install -U click | ||
49 | + | ||
50 | +.. _pip: https://pip.pypa.io/en/stable/quickstart/ | ||
51 | + | ||
52 | + | ||
53 | +A Simple Example | ||
54 | +---------------- | ||
55 | + | ||
56 | +.. code-block:: python | ||
57 | + | ||
58 | + import click | ||
59 | + | ||
60 | + @click.command() | ||
61 | + @click.option("--count", default=1, help="Number of greetings.") | ||
62 | + @click.option("--name", prompt="Your name", help="The person to greet.") | ||
63 | + def hello(count, name): | ||
64 | + """Simple program that greets NAME for a total of COUNT times.""" | ||
65 | + for _ in range(count): | ||
66 | + click.echo(f"Hello, {name}!") | ||
67 | + | ||
68 | + if __name__ == '__main__': | ||
69 | + hello() | ||
70 | + | ||
71 | +.. code-block:: text | ||
72 | + | ||
73 | + $ python hello.py --count=3 | ||
74 | + Your name: Click | ||
75 | + Hello, Click! | ||
76 | + Hello, Click! | ||
77 | + Hello, Click! | ||
78 | + | ||
79 | + | ||
80 | +Donate | ||
81 | +------ | ||
82 | + | ||
83 | +The Pallets organization develops and supports Click and other popular | ||
84 | +packages. In order to grow the community of contributors and users, and | ||
85 | +allow the maintainers to devote more time to the projects, `please | ||
86 | +donate today`_. | ||
87 | + | ||
88 | +.. _please donate today: https://palletsprojects.com/donate | ||
89 | + | ||
90 | + | ||
91 | +Links | ||
92 | +----- | ||
93 | + | ||
94 | +- Website: https://palletsprojects.com/p/click/ | ||
95 | +- Documentation: https://click.palletsprojects.com/ | ||
96 | +- Releases: https://pypi.org/project/click/ | ||
97 | +- Code: https://github.com/pallets/click | ||
98 | +- Issue tracker: https://github.com/pallets/click/issues | ||
99 | +- Test status: https://dev.azure.com/pallets/click/_build | ||
100 | +- Official chat: https://discord.gg/t6rrQZH | ||
101 | + | ||
102 | + |
1 | +click-7.1.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 | ||
2 | +click-7.1.2.dist-info/LICENSE.rst,sha256=morRBqOU6FO_4h9C9OctWSgZoigF2ZG18ydQKSkrZY0,1475 | ||
3 | +click-7.1.2.dist-info/METADATA,sha256=LrRgakZKV7Yg3qJqX_plu2WhFW81MzP3EqQmZhHIO8M,2868 | ||
4 | +click-7.1.2.dist-info/RECORD,, | ||
5 | +click-7.1.2.dist-info/WHEEL,sha256=kGT74LWyRUZrL4VgLh6_g12IeVl_9u9ZVhadrgXZUEY,110 | ||
6 | +click-7.1.2.dist-info/top_level.txt,sha256=J1ZQogalYS4pphY_lPECoNMfw0HzTSrZglC4Yfwo4xA,6 | ||
7 | +click/__init__.py,sha256=FkyGDQ-cbiQxP_lxgUspyFYS48f2S_pTcfKPz-d_RMo,2463 | ||
8 | +click/__pycache__/__init__.cpython-38.pyc,, | ||
9 | +click/__pycache__/_bashcomplete.cpython-38.pyc,, | ||
10 | +click/__pycache__/_compat.cpython-38.pyc,, | ||
11 | +click/__pycache__/_termui_impl.cpython-38.pyc,, | ||
12 | +click/__pycache__/_textwrap.cpython-38.pyc,, | ||
13 | +click/__pycache__/_unicodefun.cpython-38.pyc,, | ||
14 | +click/__pycache__/_winconsole.cpython-38.pyc,, | ||
15 | +click/__pycache__/core.cpython-38.pyc,, | ||
16 | +click/__pycache__/decorators.cpython-38.pyc,, | ||
17 | +click/__pycache__/exceptions.cpython-38.pyc,, | ||
18 | +click/__pycache__/formatting.cpython-38.pyc,, | ||
19 | +click/__pycache__/globals.cpython-38.pyc,, | ||
20 | +click/__pycache__/parser.cpython-38.pyc,, | ||
21 | +click/__pycache__/termui.cpython-38.pyc,, | ||
22 | +click/__pycache__/testing.cpython-38.pyc,, | ||
23 | +click/__pycache__/types.cpython-38.pyc,, | ||
24 | +click/__pycache__/utils.cpython-38.pyc,, | ||
25 | +click/_bashcomplete.py,sha256=9J98IHQYmCAr2Jup6TDshUr5FJEen-AoQCZR0K5nKxQ,12309 | ||
26 | +click/_compat.py,sha256=AoMaYnZ-3pwtNXuHtlb6_UXsayoG0QZiHKIRy2VFezc,24169 | ||
27 | +click/_termui_impl.py,sha256=yNktUMAdjYOU1HMkq915jR3zgAzUNtGSQqSTSSMn3eQ,20702 | ||
28 | +click/_textwrap.py,sha256=ajCzkzFly5tjm9foQ5N9_MOeaYJMBjAltuFa69n4iXY,1197 | ||
29 | +click/_unicodefun.py,sha256=apLSNEBZgUsQNPMUv072zJ1swqnm0dYVT5TqcIWTt6w,4201 | ||
30 | +click/_winconsole.py,sha256=6YDu6Rq1Wxx4w9uinBMK2LHvP83aerZM9GQurlk3QDo,10010 | ||
31 | +click/core.py,sha256=V6DJzastGhrC6WTDwV9MSLwcJUdX2Uf1ypmgkjBdn_Y,77650 | ||
32 | +click/decorators.py,sha256=3TvEO_BkaHl7k6Eh1G5eC7JK4LKPdpFqH9JP0QDyTlM,11215 | ||
33 | +click/exceptions.py,sha256=3pQAyyMFzx5A3eV0Y27WtDTyGogZRbrC6_o5DjjKBbw,8118 | ||
34 | +click/formatting.py,sha256=Wb4gqFEpWaKPgAbOvnkCl8p-bEZx5KpM5ZSByhlnJNk,9281 | ||
35 | +click/globals.py,sha256=ht7u2kUGI08pAarB4e4yC8Lkkxy6gJfRZyzxEj8EbWQ,1501 | ||
36 | +click/parser.py,sha256=mFK-k58JtPpqO0AC36WAr0t5UfzEw1mvgVSyn7WCe9M,15691 | ||
37 | +click/termui.py,sha256=G7QBEKIepRIGLvNdGwBTYiEtSImRxvTO_AglVpyHH2s,23998 | ||
38 | +click/testing.py,sha256=EUEsDUqNXFgCLhZ0ZFOROpaVDA5I_rijwnNPE6qICgA,12854 | ||
39 | +click/types.py,sha256=wuubik4VqgqAw5dvbYFkDt-zSAx97y9TQXuXcVaRyQA,25045 | ||
40 | +click/utils.py,sha256=4VEcJ7iEHwjnFuzEuRtkT99o5VG3zqSD7Q2CVzv13WU,15940 |
1 | +click |
src/venv/Lib/site-packages/click/__init__.py
0 → 100644
1 | +""" | ||
2 | +Click is a simple Python module inspired by the stdlib optparse to make | ||
3 | +writing command line scripts fun. Unlike other modules, it's based | ||
4 | +around a simple API that does not come with too much magic and is | ||
5 | +composable. | ||
6 | +""" | ||
7 | +from .core import Argument | ||
8 | +from .core import BaseCommand | ||
9 | +from .core import Command | ||
10 | +from .core import CommandCollection | ||
11 | +from .core import Context | ||
12 | +from .core import Group | ||
13 | +from .core import MultiCommand | ||
14 | +from .core import Option | ||
15 | +from .core import Parameter | ||
16 | +from .decorators import argument | ||
17 | +from .decorators import command | ||
18 | +from .decorators import confirmation_option | ||
19 | +from .decorators import group | ||
20 | +from .decorators import help_option | ||
21 | +from .decorators import make_pass_decorator | ||
22 | +from .decorators import option | ||
23 | +from .decorators import pass_context | ||
24 | +from .decorators import pass_obj | ||
25 | +from .decorators import password_option | ||
26 | +from .decorators import version_option | ||
27 | +from .exceptions import Abort | ||
28 | +from .exceptions import BadArgumentUsage | ||
29 | +from .exceptions import BadOptionUsage | ||
30 | +from .exceptions import BadParameter | ||
31 | +from .exceptions import ClickException | ||
32 | +from .exceptions import FileError | ||
33 | +from .exceptions import MissingParameter | ||
34 | +from .exceptions import NoSuchOption | ||
35 | +from .exceptions import UsageError | ||
36 | +from .formatting import HelpFormatter | ||
37 | +from .formatting import wrap_text | ||
38 | +from .globals import get_current_context | ||
39 | +from .parser import OptionParser | ||
40 | +from .termui import clear | ||
41 | +from .termui import confirm | ||
42 | +from .termui import echo_via_pager | ||
43 | +from .termui import edit | ||
44 | +from .termui import get_terminal_size | ||
45 | +from .termui import getchar | ||
46 | +from .termui import launch | ||
47 | +from .termui import pause | ||
48 | +from .termui import progressbar | ||
49 | +from .termui import prompt | ||
50 | +from .termui import secho | ||
51 | +from .termui import style | ||
52 | +from .termui import unstyle | ||
53 | +from .types import BOOL | ||
54 | +from .types import Choice | ||
55 | +from .types import DateTime | ||
56 | +from .types import File | ||
57 | +from .types import FLOAT | ||
58 | +from .types import FloatRange | ||
59 | +from .types import INT | ||
60 | +from .types import IntRange | ||
61 | +from .types import ParamType | ||
62 | +from .types import Path | ||
63 | +from .types import STRING | ||
64 | +from .types import Tuple | ||
65 | +from .types import UNPROCESSED | ||
66 | +from .types import UUID | ||
67 | +from .utils import echo | ||
68 | +from .utils import format_filename | ||
69 | +from .utils import get_app_dir | ||
70 | +from .utils import get_binary_stream | ||
71 | +from .utils import get_os_args | ||
72 | +from .utils import get_text_stream | ||
73 | +from .utils import open_file | ||
74 | + | ||
75 | +# Controls if click should emit the warning about the use of unicode | ||
76 | +# literals. | ||
77 | +disable_unicode_literals_warning = False | ||
78 | + | ||
79 | +__version__ = "7.1.2" |
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/click/_compat.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/click/core.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/click/globals.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/click/parser.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/click/termui.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/click/testing.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/click/types.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/click/utils.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/easy_install.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/__init__.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/__main__.py
0 → 100644
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/flask/_compat.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/app.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/cli.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/config.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/ctx.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/globals.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/helpers.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/flask/json/tag.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/logging.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/sessions.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/signals.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/testing.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/views.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/flask/wrappers.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/jinja2/_compat.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/bccache.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/debug.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/ext.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/filters.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/lexer.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/loaders.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/meta.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/nodes.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/parser.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/runtime.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/sandbox.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/tests.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/utils.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/jinja2/visitor.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/joblib/_dask.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/joblib/disk.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/joblib/externals/cloudpickle/__pycache__/__init__.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/cloudpickle/__pycache__/cloudpickle.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/cloudpickle/__pycache__/cloudpickle_fast.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/cloudpickle/__pycache__/compat.cpython-38.pyc
0 → 100644
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/__pycache__/cloudpickle_wrapper.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/__pycache__/process_executor.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/__pycache__/reusable_executor.cpython-38.pyc
0 → 100644
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/__init__.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/_posix_reduction.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/_posix_wait.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/_win_reduction.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/_win_wait.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/compat.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/compat_posix.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/compat_win32.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/context.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/fork_exec.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/managers.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/popen_loky_posix.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/popen_loky_win32.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/process.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/queues.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/reduction.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/resource_tracker.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/semlock.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/spawn.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/synchronize.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/externals/loky/backend/__pycache__/utils.cpython-38.pyc
0 → 100644
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/joblib/hashing.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/joblib/logger.py
0 → 100644
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/joblib/memory.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/joblib/pool.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/joblib/test/__pycache__/test_deprecated_objects.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/joblib/test/__pycache__/test_func_inspect_special_encoding.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/joblib/test/__pycache__/test_numpy_pickle_compat.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/joblib/test/__pycache__/test_numpy_pickle_utils.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
src/venv/Lib/site-packages/joblib/test/data/__pycache__/create_numpy_pickle.cpython-38.pyc
0 → 100644
No preview for this file type
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/joblib/test/data/joblib_0.11.0_compressed_pickle_py36_np111.gz
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/joblib/testing.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This file is too large to display.
src/venv/Lib/site-packages/numpy/LICENSE.txt
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/numpy/__init__.py
0 → 100644
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/numpy/_globals.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/numpy/conftest.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/core/tests/__pycache__/test_conversion_utils.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/core/tests/__pycache__/test_function_base.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/core/tests/__pycache__/test_item_selection.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/core/tests/__pycache__/test_scalar_methods.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/core/tests/__pycache__/test_scalarinherit.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/core/tests/__pycache__/test_umath_accuracy.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/core/tests/__pycache__/test_umath_complex.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/command/__pycache__/build_scripts.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/command/__pycache__/config_compiler.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/command/__pycache__/install_clib.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/command/__pycache__/install_data.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/command/__pycache__/install_headers.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/fcompiler/__pycache__/environment.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_exec_command.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_fcompiler.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_fcompiler_gnu.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_fcompiler_intel.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_fcompiler_nagfor.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_from_template.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_mingw32ccompiler.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_misc_util.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_npy_pkg_config.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_shell_utils.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/distutils/tests/__pycache__/test_system_info.cpython-38.pyc
0 → 100644
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/numpy/doc/misc.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
src/venv/Lib/site-packages/numpy/dual.py
0 → 100644
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_array_from_pyobj.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_assumed_shape.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_block_docstring.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_compile_function.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_quoted_character.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_return_character.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_return_complex.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_return_integer.cpython-38.pyc
0 → 100644
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_return_logical.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
src/venv/Lib/site-packages/numpy/f2py/tests/__pycache__/test_semicolon_split.cpython-38.pyc
0 → 100644
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
-
Please register or login to post a comment