Releases: shengchenyang/AyugeSpiderTools
Releases · shengchenyang/AyugeSpiderTools
ayugespidertools-3.10.1
AyugeSpiderTools 3.10.1 (2024-10-19)
Deprecations
mongodb
场景统一存储相关的代码逻辑,且更新方式由之前update_many
改为更正常的update_one
的规则。(8af915f)
注:
- 虽然此版本为
patch
升级,但还请在虚拟环境中自行测试后再确认是否升级。
New features
- 无。
Bug fixes
- 解决
macOS
低版本的依赖兼容问题,优化依赖管理;解决mongodb
存储在py3.11
及以上场景时motor
和pymongo
的版本冲突造成的运行报错。(a52755f)
Code optimizations
ayugespidertools-3.10.0
AyugeSpiderTools 3.10.0 (2024-10-01)
Deprecations
- 将
ayugespidertools.common.utils
中ToolsForAyu
修改为Tools
。(73703a0) - 删除
AiohttpFormRequest
,AiohttpRequestArgs
,改为更简洁的AiohttpRequest
且与aiohttp
请求参数一致。(1a7b100) - 整理并统一了
ayugespidertools.common.multiplexing
中ReuseOperation
的函数参数名。(1cad13a)
注:
- 以上变动比较影响用户的是
AiohttpRequest
的部分,为不兼容的重构部分。其它部分如果未在项目中使用则完全不影响库的正常运行。 AiohttpRequest
新功能介绍文档请在 ayugespidertools aiohttp 中查看。
New features
- 升级
ua
数据为新版本,并且将其放入data
中的browsers.json
文件中,修改获取ua
的方式。(7d08f85,7a905a3) oss
上传文件资源场景支持列表类型,现在可通过mongodb
存储场景将oss
相关的AyuItem
字段设置为列表类型,在 demo_oss_super 中查看示例。(5946c54, e553152)- 增加从
VIT_DIR
中.conf
的ini
配置解析方法get_cfg
,以方便配置统一存放管理和保护隐私,在 demo_conf 中查看示例。(dd2485b) aiohttp
请求方式改为更人性化的,且与aiohttp
请求参数保持一致的体验。以减少用户使用,理解和维护成本。(1cad13a)
注:
- 其它存储场景的
oss
暂不支持列表形式,需自行实现,可自行按照示例添加自行打包。
Bug fixes
注:
- 这里的问题修复都是非框架主要功能,不影响
scrapy
的扩展功能使用。
Code optimizations
ayugespidertools-3.9.8
AyugeSpiderTools 3.9.8 (2024-05-17)
Deprecations
- 删除新建项目中
pyproject.toml
模板。(bb0adf3) - 删除新建项目中
run.py
,run.sh
,README.md
,requirements.txt
模板的过度设计,不影响程序功能,按需自行添加。(2a02faa, cb1393f) - 更新
spider
模板内容,保证示例的稳定,为了通用性去除type hint
(请按需自行添加,DemoSpider
项目中有示例),并规避一些问题等。(7dc45fd) EncryptOperation
改名为Encrypt
,不影响库的使用。(5e529ca)- 删除库中未使用的
get_files_from_path
方法。(e0d04d2)
补充:
此弃用和变动并不影响项目中的功能,只涉及一些自动生成的多余配置文件,运行文件等,这些为过度设计(不应替用户强行决定,且未做到完美适配)。
比较喜欢完整项目模版的开发者,则可选择通过 LazyScraper 项目来更方便地生成项目模版。
New features
- 同步更新
scrapy
依赖版本为2.11.2
。(1618654)
Bug fixes
- 无。
Code optimizations
requests
相关代码更换为urllib
方式。(f014030,5cd28cc).conf
模板格式整理,修改模板为英文,以解决中英文混编下的格式问题。(f6f0e43,01d02a1,8ded926)- 添加
.editorconfig
配置。(d175c6e) poetry
依赖更新。(f783546)- 文档更新。
mongodb
存储场景中pymongo
依赖版本及应用场景的判定逻辑修改,由通过py
版本来判定改为由pymongo
依赖版本来判定。目前本库在py3.11
及以上还是会安装^4.5.0
版本的pymongo
,不影响旧项目功能。(625ad1c)
补充解释:若 py 3.11
及以上则使用 ^4.5.0
版本的 pymongo
来支持 3.6
及以上版本的 MongoDB
来解决 motor
的异步存储问题;若 py3.11
以下则使用 3.13.0
的 pymongo
版本来与目前一致。 (issue 11)
ayugespidertools-3.9.7
AyugeSpiderTools 3.9.7 (2024-03-08)
Deprecations
- 无。
New features
Bug fixes
- 修复
aiohttp
场景下由于目标网站未遵守编码时可能会出现的编码问题。(d2772b5)
Code optimizations
ayugespidertools-3.9.6
ayugespidertools-3.9.5
AyugeSpiderTools 3.9.5 (2024-01-30)
Deprecations
- 无。
New features
mysql
场景添加odku_enable
配置来设置是否开启ON DUPLICATE KEY UPDATE
功能。(25d71dd)- 添加
oss pipeline
的示例,请在DemoSpider
中demo_oss
和demo_oss_sec
查看具体使用方法。(issue 16)
Bug fixes
- 解决文件下载不支持多字段下载的问题,请在
DemoSpider
中demo_file
和demo_file_sec
查看具体使用方法。(f836f02, f504c45) - 解决远程配置管理中缺失的
mongodb:uri
优先级设置。(51ea7da)
Code optimizations
mq
场景添加关闭链接处理。(ac54fd0)- 更新
readthedocs
中的教程指南,以方便快速上手。 - 更新部分依赖库版本。
ayugespidertools-3.9.4
ayugespidertools-3.9.3
AyugeSpiderTools 3.9.3 (2023-12-30)
Deprecations
- 无。
New features
无
。
Bug fixes
- 解决
pip install ayugespidertools
并执行简单场景时提示oracledb
的依赖缺失问题。(e363937
)
注:出现此问题又是因为未重新新建环境来测试,且使用 Pycharm ssh
远程开发时不会自动索引环境依赖导致,所以未检视出项目依赖的问题。后续也会添加对 DemoSpider
场景的测试自动化来完善测试流程。
由于对用户体验影响较大,先修复此问题并发布。
Code optimizations
- 统一代码风格。(
ecb97e8
)