forked from rabbit2rabbit/bili2.0
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
yjqiang
committed
Jan 26, 2019
1 parent
12ad808
commit 3a230a6
Showing
58 changed files
with
2,955 additions
and
2,972 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,23 +1,7 @@ | ||
# bili2.0 | ||
比利脚本多用户版本 | ||
---------- | ||
使用步骤(正式版之前): | ||
1.安装python 3.6(python 3.7 websockets暂时未正式支持,除此之外应该没问题) | ||
2.安装一些依赖库 | ||
3.导入多用户到user.toml | ||
4.运行0.py | ||
|
||
|
||
版本更新: | ||
v0.1: | ||
初步实现大部分单用户的功能 | ||
v0.2: | ||
对小黑屋进行处理 | ||
试图解决403等问题 | ||
添加原来的功能支持 | ||
v1.0: | ||
正式版发布 | ||
403频繁基本解决 | ||
normal task基本完成 | ||
|
||
bili3.0主要更新(比较2.0) | ||
1.对tasks和reqs均做了区分,不同的任务种类做不一样的事情。比如`tv_raffle_handler`,顾名思义,这个class里面就是处理小电视的东西 | ||
2.tasks和reqs由原来的user成员函数变成了独立的各个静态函数,用户行为与用户尽量分离,同时减小了user这个实例对大小 | ||
3.tasks的入口以及上下任务的连接设计。这里的task分两类,一种是真正的task,比如`tv_raffle_handler`,check->join->notify,构成了task执行链条,执行的下一个链条通过return的返回值控制,在notifier.py里的`__exec_one_step`具体执行,可以broadcast;另一种不是task,只是普通的函数,执行一次就够了,例如utils.py这些 | ||
4.针对403问题,在web_session.py里面加了一个全局锁`sem = asyncio.Semaphore(3)`,控制流量大小,目前基本完全杜绝了403(晚高峰测试50用户,其中包括了节奏风暴暴力*2)。值得注意的是,如果数值过小比如1,那么就相当于一个单流量的了,那么延迟可能很高,你设置了3分钟后执行`tv_raffle_handler.join`,session可能5分钟后才排到队,发出网络请求;如果数值过高,那么可能就403了 | ||
5.bili_cobsole对数据输入办法进行了控制,需要输入“指令序号+详细控制”一次性全部输入,例如“1 -u 0”,表示对用户0执行1号命令,具体什么控制这里可以看代码,一般用u表示用户index,p表示房间号码,n表示数量。默认的u是0 | ||
|
Oops, something went wrong.