cobweb-launcher 0.1.20__tar.gz → 0.1.22__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.

Potentially problematic release.


This version of cobweb-launcher might be problematic. Click here for more details.

Files changed (48) hide show
  1. {cobweb-launcher-0.1.20/cobweb_launcher.egg-info → cobweb-launcher-0.1.22}/PKG-INFO +4 -5
  2. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/redis_db.py +1 -1
  3. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/single/launcher.py +2 -1
  4. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/single/models.py +8 -6
  5. cobweb-launcher-0.1.22/cobweb/new.py +20 -0
  6. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/task.py +0 -1
  7. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22/cobweb_launcher.egg-info}/PKG-INFO +4 -5
  8. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb_launcher.egg-info/SOURCES.txt +1 -0
  9. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/setup.py +1 -1
  10. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/LICENSE +0 -0
  11. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/README.md +0 -0
  12. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/__init__.py +0 -0
  13. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/bbb.py +0 -0
  14. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/constant.py +0 -0
  15. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/__init__.py +0 -0
  16. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/oss_db.py +0 -0
  17. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/scheduler/__init__.py +0 -0
  18. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/scheduler/default.py +0 -0
  19. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/scheduler/textfile.py +0 -0
  20. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/storer/__init__.py +0 -0
  21. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/storer/console.py +0 -0
  22. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/storer/loghub.py +0 -0
  23. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/storer/redis.py +0 -0
  24. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/db/storer/textfile.py +0 -0
  25. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/decorators.py +0 -0
  26. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/distributed/__init__.py +0 -0
  27. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/distributed/launcher.py +0 -0
  28. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/distributed/models.py +0 -0
  29. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/__init__.py +0 -0
  30. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/dev/__init__.py +0 -0
  31. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/dev/launcher.py +0 -0
  32. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/dev/models.py +0 -0
  33. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/distributed/__init__.py +0 -0
  34. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/distributed/launcher.py +0 -0
  35. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/distributed/models.py +0 -0
  36. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/equip/single/__init__.py +0 -0
  37. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/interface.py +0 -0
  38. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/log.py +0 -0
  39. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/setting.py +0 -0
  40. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/single/__init__.py +0 -0
  41. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/single/launcher.py +0 -0
  42. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/single/models.py +0 -0
  43. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/single/nest.py +0 -0
  44. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb/utils.py +0 -0
  45. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb_launcher.egg-info/dependency_links.txt +0 -0
  46. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb_launcher.egg-info/requires.txt +0 -0
  47. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/cobweb_launcher.egg-info/top_level.txt +0 -0
  48. {cobweb-launcher-0.1.20 → cobweb-launcher-0.1.22}/setup.cfg +0 -0
@@ -1,20 +1,17 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cobweb-launcher
3
- Version: 0.1.20
3
+ Version: 0.1.22
4
4
  Summary: spider_hole
5
5
  Home-page: https://github.com/Juannie-PP/cobweb
6
6
  Author: Juannie-PP
7
7
  Author-email: 2604868278@qq.com
8
8
  License: MIT
9
9
  Keywords: cobweb-launcher, cobweb
10
+ Platform: UNKNOWN
10
11
  Classifier: Programming Language :: Python :: 3
11
12
  Requires-Python: >=3.7
12
13
  Description-Content-Type: text/markdown
13
14
  License-File: LICENSE
14
- Requires-Dist: requests>=2.19.1
15
- Requires-Dist: oss2>=2.18.1
16
- Requires-Dist: redis>=4.4.4
17
- Requires-Dist: aliyun-log-python-sdk
18
15
 
19
16
  # cobweb
20
17
 
@@ -43,3 +40,5 @@ need deal
43
40
 
44
41
 
45
42
  ![img.png](https://image-luyuan.oss-cn-hangzhou.aliyuncs.com/image/D2388CDC-B9E5-4CE4-9F2C-7D173763B6A8.png)
43
+
44
+
@@ -119,7 +119,7 @@ class RedisDB:
119
119
  def get_seed(self, length: int = 200):
120
120
  cs = time.time()
121
121
 
122
- if self._get_lock(key=self.update_lock, t=Setting.SCHEDULER_LOCK_TIME):
122
+ if self._get_lock(key=self.update_lock):
123
123
 
124
124
  update_item, result = {}, []
125
125
 
@@ -171,7 +171,8 @@ def launcher(task):
171
171
  target=spider.spider_task,
172
172
  args=(
173
173
  stop, func, item,
174
- redis_db.del_seed
174
+ redis_db.del_seed,
175
+ redis_db.add_seed
175
176
  )
176
177
  ).start()
177
178
 
@@ -53,7 +53,7 @@ class Spider:
53
53
  self.storage = storage
54
54
  self.queue = queue
55
55
 
56
- def spider_task(self, stop, func, item, del_seed):
56
+ def spider_task(self, stop, func, item, del_seed, add_seed):
57
57
  while not stop.is_set():
58
58
 
59
59
  seed = self.queue.pop()
@@ -72,6 +72,7 @@ class Spider:
72
72
 
73
73
  store_queue = None
74
74
  store_data = list()
75
+ add_seed_list = list()
75
76
  iterators = func(item, seed)
76
77
 
77
78
  if not isgenerator(iterators):
@@ -94,7 +95,7 @@ class Spider:
94
95
  store_queue = it.queue()
95
96
  store_data.append(it.struct_data)
96
97
  elif isinstance(it, Seed):
97
- self.queue.push(it)
98
+ add_seed_list.append(it)
98
99
 
99
100
  elif isinstance(it, str) and it == DealModel.polling:
100
101
  self.queue.push(seed)
@@ -109,12 +110,13 @@ class Spider:
109
110
  raise TypeError("yield value type error!")
110
111
 
111
112
  if not status:
112
- seed._retry += 1
113
- self.queue.push(seed)
114
-
115
- elif store_queue and store_data:
113
+ raise Exception("yield value type error!")
114
+ if store_queue and store_data:
116
115
  store_data.append(seed)
117
116
  store_queue.push(store_data)
117
+ if add_seed_list:
118
+ del_seed(seed, spider_status=True)
119
+ add_seed(add_seed_list)
118
120
 
119
121
  except Exception as e:
120
122
  seed._retry += 1
@@ -0,0 +1,20 @@
1
+
2
+
3
+
4
+
5
+ class Launcher:
6
+
7
+ def __init__(self):
8
+ pass
9
+
10
+ def register(self, task_name, func):
11
+ pass
12
+
13
+ def launch(self, task_name):
14
+
15
+ def decorator(func):
16
+ # 注册爬虫程序
17
+ self.register(task_name, func)
18
+ return func
19
+
20
+ return decorator
@@ -6,7 +6,6 @@ from .utils import parse_info, struct_start_seeds
6
6
  def init_task_env():
7
7
  Setting.RESET_SCORE = int(os.getenv("RESET_SCORE", 600))
8
8
  Setting.CHECK_LOCK_TIME = int(os.getenv("CHECK_LOCK_TIME", 30))
9
- Setting.SCHEDULER_LOCK_TIME = int(os.getenv("SCHEDULER_LOCK_TIME", 15))
10
9
  Setting.DEAL_MODEL = os.getenv("DEAL_MODEL", DealModel.failure)
11
10
  Setting.LAUNCHER_MODEL = os.getenv("LAUNCHER_MODEL", LauncherModel.task)
12
11
  Setting.SCHEDULER_WAIT_TIME = float(os.getenv("SCHEDULER_WAIT_TIME", 5))
@@ -1,20 +1,17 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cobweb-launcher
3
- Version: 0.1.20
3
+ Version: 0.1.22
4
4
  Summary: spider_hole
5
5
  Home-page: https://github.com/Juannie-PP/cobweb
6
6
  Author: Juannie-PP
7
7
  Author-email: 2604868278@qq.com
8
8
  License: MIT
9
9
  Keywords: cobweb-launcher, cobweb
10
+ Platform: UNKNOWN
10
11
  Classifier: Programming Language :: Python :: 3
11
12
  Requires-Python: >=3.7
12
13
  Description-Content-Type: text/markdown
13
14
  License-File: LICENSE
14
- Requires-Dist: requests>=2.19.1
15
- Requires-Dist: oss2>=2.18.1
16
- Requires-Dist: redis>=4.4.4
17
- Requires-Dist: aliyun-log-python-sdk
18
15
 
19
16
  # cobweb
20
17
 
@@ -43,3 +40,5 @@ need deal
43
40
 
44
41
 
45
42
  ![img.png](https://image-luyuan.oss-cn-hangzhou.aliyuncs.com/image/D2388CDC-B9E5-4CE4-9F2C-7D173763B6A8.png)
43
+
44
+
@@ -7,6 +7,7 @@ cobweb/constant.py
7
7
  cobweb/decorators.py
8
8
  cobweb/interface.py
9
9
  cobweb/log.py
10
+ cobweb/new.py
10
11
  cobweb/setting.py
11
12
  cobweb/task.py
12
13
  cobweb/utils.py
@@ -5,7 +5,7 @@ with open("README.md", "r", encoding="utf-8") as fh:
5
5
 
6
6
  setup(
7
7
  name="cobweb-launcher",
8
- version="0.1.20",
8
+ version="0.1.22",
9
9
  packages=find_packages(),
10
10
  url="https://github.com/Juannie-PP/cobweb",
11
11
  license="MIT",