kcwebs 1.4__tar.gz → 1.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {kcwebs-1.4 → kcwebs-1.5}/PKG-INFO +2 -2
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/__init__.py +1 -1
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/http.py +57 -23
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs.egg-info/PKG-INFO +2 -2
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs.egg-info/top_level.txt +1 -0
- {kcwebs-1.4 → kcwebs-1.5}/README.md +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/common/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/common/autoload.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/common/session.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/config/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/kcwebs.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/common/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/common/autoload.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/autoload.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/html/include/static.html +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/model.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/index.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/tpl/index/home.html +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/tpl/index/index.html +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/common/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/common/autoload.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/common/html/include/static.html +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/common/model.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/config/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/config/app.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/config/database.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/config/other.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/config/redis.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/server.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/cache/cache.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/db/model.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/db/mongodb.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/db/mysql copy.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/db/mysql.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/db/sqlite.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/queues.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/redis.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/common/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/common/exceptions.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/android/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/android/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/blackberry/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/blackberry/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/chrome/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/chrome/options.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/chrome/remote_connection.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/chrome/service.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/chrome/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/action_chains.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/alert.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/by.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/desired_capabilities.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/html5/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/html5/application_cache.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/keys.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/proxy.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/service.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/touch_actions.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/utils.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/edge/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/edge/options.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/edge/service.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/edge/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/extension_connection.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/firefox_binary.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/firefox_profile.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/options.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/remote_connection.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/service.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/firefox/webelement.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/ie/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/ie/service.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/ie/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/opera/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/opera/options.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/opera/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/phantomjs/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/phantomjs/service.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/phantomjs/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/command.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/errorhandler.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/file_detector.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/getAttribute.js +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/isDisplayed.js +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/mobile.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/remote_connection.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/switch_to.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/utils.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/remote/webelement.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/safari/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/safari/service.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/safari/webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/__init__.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/abstract_event_listener.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/color.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/event_firing_webdriver.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/events.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/expected_conditions.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/select.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/ui.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/wait.py +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs.egg-info/SOURCES.txt +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs.egg-info/dependency_links.txt +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs.egg-info/entry_points.txt +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/kcwebs.egg-info/requires.txt +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/setup.cfg +0 -0
- {kcwebs-1.4 → kcwebs-1.5}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 1.2
|
|
2
2
|
Name: kcwebs
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.5
|
|
4
4
|
Summary: kcwebs作为web开发而设计的高性能框架
|
|
5
5
|
Home-page: https://docs.kwebapp.cn/index/index/2
|
|
6
6
|
Author: 百里-坤坤
|
|
@@ -9,5 +9,5 @@ Maintainer: 坤坤
|
|
|
9
9
|
Maintainer-email: fk1402936534@qq.com
|
|
10
10
|
License: MIT License
|
|
11
11
|
Description: kcwebs作为web开发而设计的高性能框架,采用全新的架构思想,注重易用性。遵循MIT开源许可协议发布,意味着个人和企业可以免费使用kcwebs,甚至允许把你基于kcwebs开发的应用开源或商业产品发布或销售。完整文档请访问:https://docs.kwebapp.cn/index/index/2
|
|
12
|
-
Keywords: kcwebs1.
|
|
12
|
+
Keywords: kcwebs1.5
|
|
13
13
|
Platform: UNKNOWN
|
|
@@ -4,7 +4,9 @@ from requests.packages.urllib3.exceptions import InsecureRequestWarning
|
|
|
4
4
|
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
|
|
5
5
|
from .selenium3 import webdriver as webdriver3
|
|
6
6
|
from .selenium3.webdriver.chrome.options import Options as Options3
|
|
7
|
+
from .selenium3.webdriver.common.by import By as webdriver3By
|
|
7
8
|
class Http:
|
|
9
|
+
By=webdriver3By
|
|
8
10
|
"http请求类"
|
|
9
11
|
set_proxies=None #设置代理
|
|
10
12
|
set_cookies={} #设置请求cookie
|
|
@@ -66,7 +68,9 @@ class Http:
|
|
|
66
68
|
self.get_cookies=self.cookieserTdict(self.get_cookie_str)
|
|
67
69
|
if self.get_cookies!=self.set_cookies:
|
|
68
70
|
self.PhantomJsObj.delete_all_cookies()
|
|
69
|
-
self.
|
|
71
|
+
for name,value in self.set_cookies:
|
|
72
|
+
t={'name':name, 'value':value}
|
|
73
|
+
self.PhantomJsObj.add_cookie(t)
|
|
70
74
|
|
|
71
75
|
|
|
72
76
|
|
|
@@ -81,8 +85,9 @@ class Http:
|
|
|
81
85
|
|
|
82
86
|
self.get_text = self.PhantomJsObj.page_source
|
|
83
87
|
self.get_cookies=self.set_cookies
|
|
84
|
-
for k in self.PhantomJsObj.get_cookies():
|
|
85
|
-
|
|
88
|
+
for k in reversed(self.PhantomJsObj.get_cookies()):
|
|
89
|
+
zd={k['name']:k['value']}
|
|
90
|
+
self.get_cookies=self.__merge(self.get_cookies,zd)
|
|
86
91
|
if self.get_cookies:
|
|
87
92
|
self.get_cookie_str=self.cookieTdictstr(self.get_cookies)
|
|
88
93
|
self.get_cookies=self.cookieserTdict(self.get_cookie_str)
|
|
@@ -90,7 +95,7 @@ class Http:
|
|
|
90
95
|
self.set_cookies=self.get_cookies
|
|
91
96
|
if closedriver:
|
|
92
97
|
self.PhantomJsObj.quit()
|
|
93
|
-
|
|
98
|
+
ChromeObj=None
|
|
94
99
|
def open_Chrome(self,url,executable_path='',closedriver=True,setheadless=True):
|
|
95
100
|
"""通过Chrome浏览器引擎模拟浏览器请求 可以获取到js渲染后的html
|
|
96
101
|
|
|
@@ -99,14 +104,14 @@ class Http:
|
|
|
99
104
|
setheadless 是否设置无头
|
|
100
105
|
|
|
101
106
|
"""
|
|
102
|
-
if not self.
|
|
107
|
+
if not self.ChromeObj:
|
|
103
108
|
chrome_options = Options3()
|
|
104
109
|
if setheadless:
|
|
105
110
|
chrome_options.add_argument("--headless") #设置无头
|
|
106
111
|
chrome_options.add_argument("--disable-gpu") # 禁用GPU硬件加速,适用于Linux和Windows系统
|
|
107
112
|
chrome_options.add_argument("--no-sandbox") # 禁用沙盒模式,在某些Linux系统上需要
|
|
108
113
|
try:
|
|
109
|
-
self.
|
|
114
|
+
self.ChromeObj = webdriver3.Chrome(executable_path=executable_path,chrome_options=chrome_options)
|
|
110
115
|
except Exception as e:
|
|
111
116
|
import os
|
|
112
117
|
print("\033[93mChromeChromeChromeChromeChromeChromeChromeChromeChromeChromeChromeChromeve\033[0m",e)
|
|
@@ -155,22 +160,25 @@ class Http:
|
|
|
155
160
|
else:
|
|
156
161
|
raise Exception('暂不支持该操作系统版本,目前仅支持CentOS7和windows10')
|
|
157
162
|
|
|
158
|
-
if self.
|
|
163
|
+
if self.ChromeObj:
|
|
159
164
|
if self.set_session:
|
|
160
165
|
self.get_cookies=self.set_cookies
|
|
161
|
-
for k in self.
|
|
166
|
+
for k in self.ChromeObj.get_cookies():
|
|
162
167
|
self.get_cookies=self.__merge(self.get_cookies,k)
|
|
163
168
|
if self.get_cookies:
|
|
164
169
|
self.get_cookie_str=self.cookieTdictstr(self.get_cookies)
|
|
165
170
|
self.get_cookies=self.cookieserTdict(self.get_cookie_str)
|
|
166
171
|
if self.get_cookies!=self.set_cookies:
|
|
167
|
-
self.
|
|
168
|
-
self.
|
|
172
|
+
self.ChromeObj.delete_all_cookies()
|
|
173
|
+
for name,value in self.set_cookies:
|
|
174
|
+
t={'name':name, 'value':value}
|
|
175
|
+
self.ChromeObj.add_cookie(t)
|
|
169
176
|
|
|
170
177
|
|
|
171
178
|
|
|
172
|
-
self.
|
|
173
|
-
|
|
179
|
+
self.ChromeObj.get(url)
|
|
180
|
+
# time.sleep(5)
|
|
181
|
+
# print('self.ChromeObj.get_cookies()',self.ChromeObj.get_cookies())
|
|
174
182
|
if not closedriver:
|
|
175
183
|
response = requests.head(url,cookies=self.set_cookies,allow_redirects=True)
|
|
176
184
|
resheader=dict(response.headers)
|
|
@@ -180,23 +188,23 @@ class Http:
|
|
|
180
188
|
|
|
181
189
|
|
|
182
190
|
time.sleep(0.1)
|
|
183
|
-
self.get_text = self.
|
|
191
|
+
self.get_text = self.ChromeObj.page_source
|
|
184
192
|
self.get_cookies=self.set_cookies
|
|
185
|
-
for k in self.
|
|
186
|
-
|
|
193
|
+
for k in reversed(self.ChromeObj.get_cookies()):
|
|
194
|
+
zd={k['name']:k['value']}
|
|
195
|
+
self.get_cookies=self.__merge(self.get_cookies,zd)
|
|
187
196
|
if self.get_cookies:
|
|
188
197
|
self.get_cookie_str=self.cookieTdictstr(self.get_cookies)
|
|
189
198
|
self.get_cookies=self.cookieserTdict(self.get_cookie_str)
|
|
190
199
|
if self.set_session:
|
|
191
|
-
self.set_cookies=self.
|
|
200
|
+
self.set_cookies=self.get_cookie_str
|
|
192
201
|
if closedriver:
|
|
193
|
-
|
|
194
|
-
self.
|
|
195
|
-
self.__ChromeObj.quit()
|
|
202
|
+
self.ChromeObj.close()
|
|
203
|
+
self.ChromeObj.quit()
|
|
196
204
|
def close_webdriver(self):
|
|
197
|
-
if self.
|
|
198
|
-
self.
|
|
199
|
-
self.
|
|
205
|
+
if self.ChromeObj:
|
|
206
|
+
self.ChromeObj.close()
|
|
207
|
+
self.ChromeObj.quit()
|
|
200
208
|
if self.PhantomJsObj:
|
|
201
209
|
self.PhantomJsObj.quit()
|
|
202
210
|
|
|
@@ -253,13 +261,39 @@ class Http:
|
|
|
253
261
|
self.get_content=response.content
|
|
254
262
|
self.get_response=response
|
|
255
263
|
self.get_status_code=int(response.status_code)
|
|
264
|
+
def __is_index(self,params,index):
|
|
265
|
+
"""判断列表或字典里的索引是否存在
|
|
266
|
+
|
|
267
|
+
params 列表或字典
|
|
268
|
+
|
|
269
|
+
index 索引值
|
|
270
|
+
|
|
271
|
+
return Boolean类型
|
|
272
|
+
"""
|
|
273
|
+
try:
|
|
274
|
+
params[index]
|
|
275
|
+
except KeyError:
|
|
276
|
+
return False
|
|
277
|
+
except IndexError:
|
|
278
|
+
return False
|
|
279
|
+
else:
|
|
280
|
+
return True
|
|
256
281
|
def __merge(self,dict1, dict2):
|
|
257
282
|
"合并两个字典"
|
|
258
283
|
C_dict = {}
|
|
259
284
|
for key,value in dict1.items():
|
|
260
285
|
C_dict[key]=value
|
|
261
286
|
for key,value in dict2.items():
|
|
262
|
-
|
|
287
|
+
if value:
|
|
288
|
+
if isinstance(value, str) or (self.__is_index(C_dict,key) and isinstance(C_dict[key], str)):
|
|
289
|
+
if self.__is_index(C_dict,key):
|
|
290
|
+
t1,t2=len(str(value)),len(str(C_dict[key]))
|
|
291
|
+
if t1>=t2:
|
|
292
|
+
C_dict[key]=value
|
|
293
|
+
else:
|
|
294
|
+
C_dict[key]=value
|
|
295
|
+
else:
|
|
296
|
+
C_dict[key]=value
|
|
263
297
|
return C_dict
|
|
264
298
|
def cookieserTdict(self,cookiesstr):
|
|
265
299
|
"cookies字符串转换字典"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 1.2
|
|
2
2
|
Name: kcwebs
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.5
|
|
4
4
|
Summary: kcwebs作为web开发而设计的高性能框架
|
|
5
5
|
Home-page: https://docs.kwebapp.cn/index/index/2
|
|
6
6
|
Author: 百里-坤坤
|
|
@@ -9,5 +9,5 @@ Maintainer: 坤坤
|
|
|
9
9
|
Maintainer-email: fk1402936534@qq.com
|
|
10
10
|
License: MIT License
|
|
11
11
|
Description: kcwebs作为web开发而设计的高性能框架,采用全新的架构思想,注重易用性。遵循MIT开源许可协议发布,意味着个人和企业可以免费使用kcwebs,甚至允许把你基于kcwebs开发的应用开源或商业产品发布或销售。完整文档请访问:https://docs.kwebapp.cn/index/index/2
|
|
12
|
-
Keywords: kcwebs1.
|
|
12
|
+
Keywords: kcwebs1.5
|
|
13
13
|
Platform: UNKNOWN
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/__init__.py
RENAMED
|
File without changes
|
{kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/autoload.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/tpl/index/home.html
RENAMED
|
File without changes
|
{kcwebs-1.4 → kcwebs-1.5}/kcwebs/tempfile/kcwebs/app/api/controller/index/tpl/index/index.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/common/html5/application_cache.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/abstract_event_listener.py
RENAMED
|
File without changes
|
|
File without changes
|
{kcwebs-1.4 → kcwebs-1.5}/kcwebs/utill/selenium3/webdriver/support/event_firing_webdriver.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|