Skip to content

Releases: shengchenyang/AyugeSpiderTools

ayugespidertools-3.10.1

19 Oct 14:35
Compare
Choose a tag to compare

AyugeSpiderTools 3.10.1 (2024-10-19)

Deprecations

  • mongodb 场景统一存储相关的代码逻辑,且更新方式由之前 update_many 改为更正常的 update_one 的规则。(8af915f

注:

  1. 虽然此版本为 patch 升级,但还请在虚拟环境中自行测试后再确认是否升级。

New features

  • 无。

Bug fixes

  • 解决 macOS 低版本的依赖兼容问题,优化依赖管理;解决 mongodb 存储在 py3.11 及以上场景时 motorpymongo 的版本冲突造成的运行报错。(a52755f

Code optimizations

ayugespidertools-3.10.0

01 Oct 04:37
Compare
Choose a tag to compare

AyugeSpiderTools 3.10.0 (2024-10-01)

Deprecations

  • ayugespidertools.common.utilsToolsForAyu 修改为 Tools。(73703a0
  • 删除 AiohttpFormRequestAiohttpRequestArgs,改为更简洁的 AiohttpRequest 且与 aiohttp 请求参数一致。(1a7b100
  • 整理并统一了 ayugespidertools.common.multiplexingReuseOperation 的函数参数名。(1cad13a

注:

  1. 以上变动比较影响用户的是 AiohttpRequest 的部分,为不兼容的重构部分。其它部分如果未在项目中使用则完全不影响库的正常运行。
  2. AiohttpRequest 新功能介绍文档请在 ayugespidertools aiohttp 中查看。

New features

  • 升级 ua 数据为新版本,并且将其放入 data 中的 browsers.json 文件中,修改获取 ua 的方式。(7d08f857a905a3
  • oss 上传文件资源场景支持列表类型,现在可通过 mongodb 存储场景将 oss 相关的 AyuItem 字段设置为列表类型,在 demo_oss_super 中查看示例。(5946c54, e553152
  • 增加从 VIT_DIR.confini 配置解析方法 get_cfg,以方便配置统一存放管理和保护隐私,在 demo_conf 中查看示例。(dd2485b
  • aiohttp 请求方式改为更人性化的,且与 aiohttp 请求参数保持一致的体验。以减少用户使用,理解和维护成本。(1cad13a

注:

  1. 其它存储场景的 oss 暂不支持列表形式,需自行实现,可自行按照示例添加自行打包。

Bug fixes

  • 修复轨迹生成时关于抖动出错的问题。(6ad6958
  • 修复自使用的 json 解析方法的错误。(a1d7aac

注:

  1. 这里的问题修复都是非框架主要功能,不影响 scrapy 的扩展功能使用。

Code optimizations

  • 升级 aiohttp 依赖版本。(5b448e5
  • Makefile 添加 git 相关的配置。(6304b77
  • 解决文档 Edit on GitHub 出现的链接不对的问题。(6a79f61
  • 文档完善贡献部分。(842300a
  • 优化 get_items_except_keys 方法,提升效率。(d218144

ayugespidertools-3.9.8

17 May 14:59
Compare
Choose a tag to compare

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 方式。(f0140305cd28cc
  • .conf 模板格式整理,修改模板为英文,以解决中英文混编下的格式问题。(f6f0e4301d02a18ded926
  • 添加 .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.0pymongo 版本来与目前一致。 (issue 11

ayugespidertools-3.9.7

08 Mar 08:33
Compare
Choose a tag to compare

AyugeSpiderTools 3.9.7 (2024-03-08)

Deprecations

  • 无。

New features

  • oss 场景添加是否保存完整链接的配置 full_link_enable,默认 false,不影响旧项目。(009ac20)
  • oss 场景不再需要手动添加上传的字段是否为空的判断。(009ac20)

Bug fixes

  • 修复 aiohttp 场景下由于目标网站未遵守编码时可能会出现的编码问题。(d2772b5)

Code optimizations

  • 添加 aiohttp 可支持的请求方式。(c7c247e)
  • 优化 oss, file download 场景的 pipeline 示例,减少复杂逻辑。(b0929d8, f0f1b2f)
  • 测试场景增加剔除无关代码块的规则。(3e0ce94)
  • 代码风格统一,补充缺失的 type hint,提升开发体验。

ayugespidertools-3.9.6

18 Feb 06:22
Compare
Choose a tag to compare

AyugeSpiderTools 3.9.6 (2024-02-18)

Deprecations

  • 无。

New features

  • 无。

Bug fixes

  • 修复 mysql 存储引擎 engine 参数未生效的问题。(1240e37)

Code optimizations

  • 更新 aiohttp 依赖库版本以解决破坏兼容性的问题,同步更新 scrapy 依赖版本。(3f0dc5a, 246c824
  • 文档更新。

ayugespidertools-3.9.5

30 Jan 03:56
Compare
Choose a tag to compare

AyugeSpiderTools 3.9.5 (2024-01-30)

Deprecations

  • 无。

New features

  • mysql 场景添加 odku_enable 配置来设置是否开启 ON DUPLICATE KEY UPDATE 功能。(25d71dd)
  • 添加 oss pipeline 的示例,请在 DemoSpiderdemo_ossdemo_oss_sec 查看具体使用方法。(issue 16)

Bug fixes

  • 解决文件下载不支持多字段下载的问题,请在 DemoSpiderdemo_filedemo_file_sec 查看具体使用方法。(f836f02, f504c45)
  • 解决远程配置管理中缺失的 mongodb:uri 优先级设置。(51ea7da)

Code optimizations

  • mq 场景添加关闭链接处理。(ac54fd0)
  • 更新 readthedocs 中的教程指南,以方便快速上手。
  • 更新部分依赖库版本。

ayugespidertools-3.9.4

10 Jan 08:04
Compare
Choose a tag to compare

AyugeSpiderTools 3.9.4 (2024-01-10)

Deprecations

  • 无。

New features

  • 添加 elasticsearch 支持,具体示例请在 DemoSpiderdemo_esdemo_es_async 查看。(issue 15, c4d048e, 7651dd3)

Bug fixes

  • 无。

Code optimizations

ayugespidertools-3.9.3

30 Dec 15:02
Compare
Choose a tag to compare

AyugeSpiderTools 3.9.3 (2023-12-30)

Deprecations

  • 无。

New features

Bug fixes

  • 解决 pip install ayugespidertools 并执行简单场景时提示 oracledb 的依赖缺失问题。(e363937)

注:出现此问题又是因为未重新新建环境来测试,且使用 Pycharm ssh 远程开发时不会自动索引环境依赖导致,所以未检视出项目依赖的问题。后续也会添加对 DemoSpider 场景的测试自动化来完善测试流程。

由于对用户体验影响较大,先修复此问题并发布。

Code optimizations

ayugespidertools-3.9.2

28 Dec 08:08
Compare
Choose a tag to compare

AyugeSpiderTools 3.9.2 (2023-12-28)

Deprecations

  • 无。

New features

  • mysql 配置项支持自定义自动创建库表场景的 enginecollate 参数。(e652666)

Bug fixes

  • 解决 settings 模板生成的 LOG_FILE 不是当前项目名的问题。(93c19d6)

Code optimizations

  • 更新 spider 模板,模板中解析方式改为 scrapy 的形式,防止对开发者造成理解成本。(91ad948)
  • 更新 spider 模板中的 type hint,优化了开发者使用体验。(c2a0908)
  • 优化一些数据库连接处理和配置解析方法等。

ayugespidertools-3.9.1

22 Dec 07:07
Compare
Choose a tag to compare

AyugeSpiderTools 3.9.1 (2023-12-22)

Deprecations

  • 无。

New features

  • 添加 postgresqlasyncioAsyncConnectionPool 存储场景支持。(341e768)

Bug fixes

  • 解决 asyncio 协程场景下的 spiderAyuItem 写法风格不兼容的问题。(66177e4)

Code optimizations

  • 更新 spider 模板示例。(61e10b1)