有什么新的内容在icodeapi v1.0.0中?
概述
添加
IcodeAPI.__init__
和AsyncIcodeAPI.__init__
的timeout
参数
增加IcodeAPI.getScratchAsset
和AsyncIcodeAPI.getScratchAsset
函数以获取scratch作品资源
增加getUserIdFromUrl
函数
增加icodeapi.tools模块封装一些实用工具
修复3~4个bug,给IcodeAPI.submitWork
和AsyncIcodeAPI.submitWork
添加workDetail
参数,添加workCode
参数默认值,且workType
现在允许"scratch"和"python"这样的写法
给IcodeAPI.getWorkDetail
和AsyncIcodeAPI.getWorkDetail
增加了addBrowseNum参数,优化了部分代码
设置连接池超时
现在可以设置IcodeAPI
和AsyncIcodeAPI
内部使用的httpx连接池的超时时间。
from icodeapi import IcodeAPI
user = IcodeAPI(timeout = None) # 永不超时
workId = input("Enter work id: ")
i = 0
while i < 1000:
user.getWorkDetail(workId = workId) # 刷取浏览量
i = i + 1
获取scratch作品资源
现在可以使用IcodeAPI.getScratchAsset
和AsyncIcodeAPI.getScratchAsset
来获取scratch作品资源。
from icodeapi import IcodeAPI
user = IcodeAPI()
md5ext = input('Enter asset md5ext: ')
with open('asset.png', 'wb') as f: # 以二进制方式打开
data = user.getScratchAsset(md5ext = md5ext)
f.write(data) # 写入文件
从网址中获取用户Id
现在可以使用getUserIdFromUrl
来从网址中获取用户Id。
from icodeapi import getUserIdFromUrl
print(getUserIdFromUrl('https://icodeshequ.youdao.com/personal?userId=qqCD6566A4CF1F39111AE5246D138220CA')) # qqCD6566A4CF1F39111AE5246D138220CA
tools模块
新增了tools模块,封装了一些实用的函数,例如下载作品DownloadWork
。
文档内已增加tools模块的单独文档,想要详细了解可以前往此处。
from icodeapi.tools import DownloadWork
import asyncio
async def main():
workId = input('Enter work id: ')
await DownloadWork(workId = workId, path = '.\\') # 下载到当前目录
asyncio.run(main())
更便捷地发布作品
给IcodeAPI.submitWork
和AsyncIcodeAPI.submitWork
添加workDetail
参数,添加workCode
参数默认值,且workType
现在允许"scratch"和"python"这样的写法。
详细请见操作文档。
更加精细的控制
IcodeAPI.getWorkDetail
和AsyncIcodeAPI.getWorkDetail
添加了addBrowseNum
参数,以控制在获取作品信息时是否增加浏览量。