-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
实现马娘数据的异步协程更新 #1
Conversation
CYDXDianXian
commented
Mar 7, 2022
- 将马娘数据的同步更新改为异步更新
请问你那试过不会出现其他问题吗,我一开始也是异步的,所以采用的httpx,异步性能非常好,但是测试了几天偶尔会出现更新失败的问题,所以我才将部分换成requests同步更新的,甚至加上了time.sleep(0.5)来阻塞主线程 |
我测了两遍没出现问题,httpx部分并没改,我只是吧request全都改成了hoshino.aiorequest,解决bot更新数据的时候不会响应其它消息的问题 |
那我先试一天吧2333,等半夜的自动更新,那个点没出问题,一般就可以了 |
诶?为什么非要等到凌晨1点31分?改个临近时间测一下不行吗?(难道说只有那个点会出问题?hhh) |
不知道为啥,前几天出问题都是半夜,可能老外用的多,我测试出最稳的点就是1点到2点,但偶尔也会有问题哈哈 |
这个点我倒也没事,坐等半夜了2333,没问题就换aioreq,httpx的异步协程好像还有点不一样 |
话说你在依赖文件里还加了aiofile,是打算把文件写入读取也改成异步的来解决线程安全问题吗,另外你刚上传的文件里自动更新时间忘记改回去了hhhh |
先等一下,我把httpx改成aioreq出问题了,我正在研究怎么解决233 |
这是正常现象2333,异步httpx和req不一样的,aioreq也只是咖啡佬给req套了个异步的壳hhh |
如果我没记错,我之前也遇到requests和httpx结果不一样的问题,至今没有解决 |
然后我觉得吧,httpx也没必要换,毕竟httpx可异步可同步,需要异步的话用httpx.AsyncClient()就行了 |
其实httpx就放那不改也不会影响bot的异步响应其它消息。。。 |
我去,这是什么问题。。
|
哎嘿嘿,退回到httpx那个版本了,也无大碍,反正都不影响异步响应其他消息~~2333 |
啊这,哈哈哈,可还行,我还等着你给我研究出来原因呢hhhh |
寄,为什么他有时候可以成功有时候就是
真的很奇特呢 |
这个问题应该是正常的,现在这个时间点用的人也很多,应该是ocr接口炸了,如果我没记错是因为在这:
这里ocr接口的结果文字的返回值为空列表,所以会说 |
原来如此。。 with open(current_dir,'rb') as f:
resp = await aiorequests.post(api, files = {f'{en_name}.png': f}, data = data, timeout = 60)
resp.encodin = 'utf-8'
res_json = await resp.json()
json_obj = demjson.encode(res_json) # 解决解析json出错问题
text = json.loads(json_obj)['ParsedResults'][0]['ParsedText'].replace('\r\n', '') 是这里出的问题。。没错 那就是说,我之前吧httpx改aioreq也是正确的操作,因为它成功了更新了两次,之后就一直报 |
应该没错 |
你看马娘插件另一个模块有个抽卡的那个,那个关于爬公告的结果非常神奇,httpx爬出来的和aiohttp的和requests的有时候三个都不一样,直接给我整不会了hhhhh |
哦对了, |