Skip to content

Commit d300f5f

Browse files
author
Boris
committed
将bitarray库拆出来,选择性安装
1 parent 73d0f29 commit d300f5f

5 files changed

Lines changed: 49 additions & 26 deletions

File tree

README.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,23 @@
3333

3434
From PyPi:
3535

36+
通用版
37+
3638
```shell
3739
pip3 install feapder
3840
```
3941

40-
From Git:
42+
完整版:
4143

4244
```shell
43-
pip3 install git+https://github.com/Boris-code/feapder.git
44-
```
45+
pip3 install feapder[all]
46+
```
47+
48+
常用版与完整版区别:
49+
50+
1. 完整版支持基于内存去重
4551

46-
若安装出错,请参考[安装问题](https://boris.org.cn/feapder/#/question/%E5%AE%89%E8%A3%85%E9%97%AE%E9%A2%98)
52+
完整版可能会安装出错,若安装出错,请参考[安装问题](https://boris.org.cn/feapder/#/question/%E5%AE%89%E8%A3%85%E9%97%AE%E9%A2%98)
4753

4854
## 小试一下
4955

docs/README.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,23 @@
3333

3434
From PyPi:
3535

36+
通用版
37+
3638
```shell
3739
pip3 install feapder
3840
```
3941

40-
From Git:
42+
完整版:
4143

4244
```shell
43-
pip3 install git+https://github.com/Boris-code/feapder.git
44-
```
45+
pip3 install feapder[all]
46+
```
47+
48+
常用版与完整版区别:
49+
50+
1. 完整版支持基于内存去重
4551

46-
若安装出错,请参考[安装问题](question/安装问题)
52+
完整版可能会安装出错,若安装出错,请参考[安装问题](question/安装问题)
4753

4854
## 小试一下
4955

feapder/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.3.9
1+
1.4.0

feapder/dedup/bitarray.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010

1111
from __future__ import absolute_import
1212

13-
import bitarray
1413

1514
from feapder.db.redisdb import RedisDB
1615

@@ -45,6 +44,13 @@ def count(self, value=True):
4544

4645
class MemoryBitArray(BitArray):
4746
def __init__(self, num_bits):
47+
try:
48+
import bitarray
49+
except Exception as e:
50+
raise Exception(
51+
"需要安装feapder完整版\ncommand: pip install feapder[all]\n若安装出错,参考:https://boris.org.cn/feapder/#/question/%E5%AE%89%E8%A3%85%E9%97%AE%E9%A2%98"
52+
)
53+
4854
self.num_bits = num_bits
4955
self.bitarray = bitarray.bitarray(num_bits, endian="little")
5056

setup.py

Lines changed: 21 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -33,31 +33,36 @@
3333
]
3434
)
3535

36+
requires = [
37+
"better-exceptions>=0.2.2",
38+
"DBUtils>=2.0",
39+
"parsel>=1.5.2",
40+
"PyExecJS>=1.5.1",
41+
"PyMySQL>=0.9.3",
42+
"redis>=2.10.6",
43+
"requests>=2.22.0",
44+
"bs4>=0.0.1",
45+
"ipython>=7.14.0",
46+
"redis-py-cluster>=1.3.4",
47+
"cryptography>=3.3.2",
48+
"selenium>=3.141.0",
49+
]
50+
51+
memory_dedup_requires = ["bitarray>=1.5.3"]
52+
all_requires = memory_dedup_requires
53+
3654
setuptools.setup(
3755
name="feapder",
3856
version=version,
3957
author="Boris",
4058
license="MIT",
4159
author_email="feapder@qq.com",
42-
python_requires='>=3.6',
60+
python_requires=">=3.6",
4361
description="feapder是一款支持分布式、批次采集、任务防丢、报警丰富的python爬虫框架",
4462
long_description=long_description,
4563
long_description_content_type="text/markdown",
46-
install_requires=[ # 工具包的依赖包
47-
"better-exceptions>=0.2.2",
48-
"DBUtils>=2.0",
49-
"parsel>=1.5.2",
50-
"PyExecJS>=1.5.1",
51-
"PyMySQL>=0.9.3",
52-
"redis>=2.10.6",
53-
"requests>=2.22.0",
54-
"bs4>=0.0.1",
55-
"ipython>=7.14.0",
56-
"bitarray>=1.5.3",
57-
"redis-py-cluster>=1.3.4",
58-
"cryptography>=3.3.2",
59-
"selenium>=3.141.0"
60-
],
64+
install_requires=requires,
65+
extras_require={"all": all_requires},
6166
entry_points={"console_scripts": ["feapder = feapder.commands.cmdline:execute"]},
6267
url="https://github.com/Boris-code/feapder.git",
6368
packages=packages,

0 commit comments

Comments
 (0)