工具模块
工具模块
icodeapi提供了一个tools模块,里面包含了一些强大而实用的工具函数。
下载作品
使用tools.DownloadWork
函数异步地下载一个作品。
workId : 需要下载的作品id
path : 下载后保存的路径
api : 发出请求时使用的AsyncIcodeAPI对象,当为None时默认新创建一个
刷浏览量
使用tools.ViewNumMaker
函数快速提升一个作品的浏览量。
如果浏览量在一日内提高的数值非常高,有大概率会登上社区首页推荐。
workId : 需要刷浏览量的作品id
num : 需要刷的浏览量
api : 发出请求时使用的AsyncIcodeAPI对象,当为None时默认新创建一个
评论区唱歌
使用tools.SingSong
函数在评论区循环发送字符串内所有内容。
workId : 需要评论的作品id
songWords : 需要发送的内容,用换行分隔每一句话
api : 发出请求时使用的IcodeAPI对象
该函数会返回一个生成器,每迭代一次发送一句内容。
请注意评论操作的时间间隔限制,小图灵社区设置了5秒才能评论一次的限制。
示例:
from icodeapi import *
from icodeapi.tools import *
import time
user = IcodeAPI(input('Cookie: '))
times = int(input('Sing times: '))
num = 0
while num < times:
for i in SingSong('a1f09b5eb34a48dfbdc8dee59d130ec6',
"""You say that we will always be,
without you I fell lost at see.
Through the darkness you'd hide with me,
like a wind we'd be wild and free.
You~~~
said you follow me anywhere.
But your e ~ yes,
tell me you won't be there.
I've gotta learn how to love without you!
I've gotta carry me cross without you~
Stuck in the riddle and I'm just about to-----
figure out without you!
And I'm done sitting home without you!
Fuck I'm going out without you!
I'm going to tear this city without you,
I'm going Bonnie and Clyde without you~~~
deng deng, deng deng deng, deng deng deng deng deng deng, deng deng deng~
deng deng, deng deng deng, deng deng deng deng deng deng deng deng deng deng~~~~""",
user
):
if i == 'Finish one time':
num += 1
time.sleep(5.1)
删除评论
使用tools.CommentsCleaner
方法批量删除一个作品内的评论。
async def CommentsCleaner(workId : str,
api : AsyncIcodeAPI,
page : Union[list[int], tuple[int], set[int]] = ALL_PAGES,
getNum : int = 20) -> bool
workId : 要删除评论的作品ID
api : 发出请求时使用的AsyncIcodeAPI对象
page : 要删除的评论页码,如果为tools.ALL_PAGES则删除所有页
getNum : 每次获取的评论数量,默认为20
重发作品
使用tools.ResubmitAllWorks
重发所有作品。
async for
使用。每进行一次迭代,所有作品都将被重发一次,并返回asyncio.gather
的返回值(其中包含使用AsyncIcodeAPI
重发每个作品的返回值)。
api : 发出请求时使用的AsyncIcodeAPI对象
删除作品
使用tools.WorksCleaner
批量删除自己的作品。
async def WorksCleaner(api : AsyncIcodeAPI,
page : list[int] | tuple[int] | set[int] = ALL_PAGES,
getNum : int = 20) -> bool
api : 发出请求时使用的AsyncIcodeAPI对象
page : 要删除的作品页码列表,如果为tools.ALL_PAGES
则删除所有页
getNum : 每次获取的作品数量,默认为20