zhiyu1998 / nonebot-plugin-resolver

适用于nonebot2 链接分享解析视频、图片链接/小程序插件,tiktok、bilibili、twitter等实时发送!
https://registry.nonebot.dev/plugin/nonebot-plugin-resolver:nonebot-plugin-resolver
Mulan Permissive Software License, Version 2
44 stars 9 forks source link

[Bug]: 在华为云上部署时无法下载b站视频 #14

Closed llllin2333 closed 2 days ago

llllin2333 commented 2 days ago

这个问题是否已经存在?

如何复现

在本地电脑以及其他服务器时正常使用,但挪到一个华为云服务器上时b站视频下载报错,其他解析正常 怀疑是服务器的网络带宽(2m)过慢导致的httpx超时?

预期结果

No response

实际结果

使用代理的情况

10-07 13:13:17 [INFO] nonebot | Event will be handled by Matcher(type='message', module=src.plugins.nonebot-plugin-resolver, lineno=58)
10-07 13:13:18 [INFO] nonebot-plugin-resolver | 0
10-07 13:13:24 [INFO] nonebot-plugin-resolver | {'BV1Uf421q7G4-video.m4s': "don't exist", 'BV1Uf421q7G4-audio.m4s': "don't exist"}
10-07 13:13:24 [INFO] nonebot | Matcher(type='message', module=src.plugins.nonebot-plugin-resolver, lineno=58) running complete
10-07 13:13:24 [ERROR] nonebot | Running Matcher(type='message', module=src.plugins.nonebot-plugin-resolver, lineno=58) failed.
Traceback (most recent call last):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_transports\default.py", line 67, in map_httpcore_exceptions
    yield
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_transports\default.py", line 371, in handle_async_request
    resp = await self._pool.handle_async_request(req)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\connection_pool.py", line 216, in handle_async_request
    raise exc from None
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\connection_pool.py", line 196, in handle_async_request
    response = await connection.handle_async_request(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\http_proxy.py", line 317, in handle_async_request
    stream = await stream.start_tls(**kwargs)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\http11.py", line 383, in start_tls
    return await self._stream.start_tls(ssl_context, server_hostname, timeout)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_backends\anyio.py", line 69, in start_tls
    with map_exceptions(exc_map):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(typ, value, traceback)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_exceptions.py", line 14, in map_exceptions
    raise to_exc(exc) from exc
httpcore.ConnectError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\ELF_RSS\bot.py", line 11, in <module>
    nonebot.run(app="__mp_main__:app")
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\__init__.py", line 335, in run
    get_driver().run(*args, **kwargs)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\drivers\fastapi.py", line 186, in run
    uvicorn.run(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 641, in run_until_complete
    self.run_forever()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 608, in run_forever
    self._run_once()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1936, in _run_once
    handle._run()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 84, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\message.py", line 476, in check_and_run_matcher
    await _run_matcher(
> File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\message.py", line 428, in _run_matcher
    await matcher.run(bot, event, state, stack, dependency_cache)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\internal\matcher\matcher.py", line 850, in run
    await self.simple_run(bot, event, state, stack, dependency_cache)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\internal\matcher\matcher.py", line 825, in simple_run
    await handler(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\dependencies\__init__.py", line 94, in __call__
    return await cast(Callable[..., Awaitable[R]], self.call)(**values)
  File "C:\Users\Administrator\Desktop\ELF_RSS\src\plugins\nonebot-plugin-resolver\__init__.py", line 109, in wrapper
    return await func(*args, **kwargs)
  File "C:\Users\Administrator\Desktop\ELF_RSS\src\plugins\nonebot-plugin-resolver\__init__.py", line 311, in bilibili
    await asyncio.gather(
  File "C:\Users\Administrator\Desktop\ELF_RSS\src\plugins\nonebot-plugin-resolver\core\bili23.py", line 21, in download_b_file
    async with client.stream("GET", url, headers=BILIBILI_HEADER) as resp:
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\contextlib.py", line 210, in __aenter__
    return await anext(self.gen)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1602, in stream
    response = await self.send(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1646, in send
    response = await self._send_handling_auth(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1674, in _send_handling_auth
    response = await self._send_handling_redirects(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1711, in _send_handling_redirects
    response = await self._send_single_request(request)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1748, in _send_single_request
    response = await transport.handle_async_request(request)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_transports\default.py", line 370, in handle_async_request
    with map_httpcore_exceptions():
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(typ, value, traceback)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_transports\default.py", line 84, in map_httpcore_exceptions
    raise mapped_exc(message) from exc
httpx.ConnectError

不使用代理的情况

10-07 13:31:54 [INFO] nonebot | Event will be handled by Matcher(type='message', module=src.plugins.nonebot-plugin-resolver, lineno=58)
10-07 13:31:55 [INFO] nonebot-plugin-resolver | 0
10-07 13:32:17 [INFO] nonebot-plugin-resolver | {'BV1Uf421q7G4-video.m4s': "don't exist", 'BV1Uf421q7G4-audio.m4s': "don't exist"}
10-07 13:32:17 [INFO] nonebot | Matcher(type='message', module=src.plugins.nonebot-plugin-resolver, lineno=58) running complete
10-07 13:32:17 [ERROR] nonebot | Running Matcher(type='message', module=src.plugins.nonebot-plugin-resolver, lineno=58) failed.
Traceback (most recent call last):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_transports\default.py", line 67, in map_httpcore_exceptions
    yield
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_transports\default.py", line 371, in handle_async_request
    resp = await self._pool.handle_async_request(req)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\connection_pool.py", line 216, in handle_async_request
    raise exc from None
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\connection_pool.py", line 196, in handle_async_request
    response = await connection.handle_async_request(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\connection.py", line 99, in handle_async_request
    raise exc
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\connection.py", line 76, in handle_async_request
    stream = await self._connect(request)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_async\connection.py", line 122, in _connect
    stream = await self._network_backend.connect_tcp(**kwargs)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_backends\auto.py", line 30, in connect_tcp
    return await self._backend.connect_tcp(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_backends\anyio.py", line 115, in connect_tcp
    with map_exceptions(exc_map):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(typ, value, traceback)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpcore\_exceptions.py", line 14, in map_exceptions
    raise to_exc(exc) from exc
httpcore.ConnectError: All connection attempts failed

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\ELF_RSS\bot.py", line 11, in <module>
    nonebot.run(app="__mp_main__:app")
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\__init__.py", line 335, in run
    get_driver().run(*args, **kwargs)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\drivers\fastapi.py", line 186, in run
    uvicorn.run(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 641, in run_until_complete
    self.run_forever()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 608, in run_forever
    self._run_once()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1936, in _run_once
    handle._run()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 84, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\message.py", line 476, in check_and_run_matcher
    await _run_matcher(
> File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\message.py", line 428, in _run_matcher
    await matcher.run(bot, event, state, stack, dependency_cache)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\internal\matcher\matcher.py", line 850, in run
    await self.simple_run(bot, event, state, stack, dependency_cache)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\internal\matcher\matcher.py", line 825, in simple_run
    await handler(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\nonebot\dependencies\__init__.py", line 94, in __call__
    return await cast(Callable[..., Awaitable[R]], self.call)(**values)
  File "C:\Users\Administrator\Desktop\ELF_RSS\src\plugins\nonebot-plugin-resolver\__init__.py", line 109, in wrapper
    return await func(*args, **kwargs)
  File "C:\Users\Administrator\Desktop\ELF_RSS\src\plugins\nonebot-plugin-resolver\__init__.py", line 311, in bilibili
    await asyncio.gather(
  File "C:\Users\Administrator\Desktop\ELF_RSS\src\plugins\nonebot-plugin-resolver\core\bili23.py", line 21, in download_b_file
    async with client.stream("GET", url, headers=BILIBILI_HEADER) as resp:
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\contextlib.py", line 210, in __aenter__
    return await anext(self.gen)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1602, in stream
    response = await self.send(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1646, in send
    response = await self._send_handling_auth(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1674, in _send_handling_auth
    response = await self._send_handling_redirects(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1711, in _send_handling_redirects
    response = await self._send_single_request(request)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_client.py", line 1748, in _send_single_request
    response = await transport.handle_async_request(request)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_transports\default.py", line 370, in handle_async_request
    with map_httpcore_exceptions():
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(typ, value, traceback)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\httpx\_transports\default.py", line 84, in map_httpcore_exceptions
    raise mapped_exc(message) from exc
httpx.ConnectError: All connection attempts failed

截图或视频

[在这里上传图片]

插件版本号

nonebot-plugin-resolver1.2.18

适配器类型

LLOneBot

Python版本

Python3.11以上

系统

windows

zhiyu1998 commented 2 days ago

👋 你好!感谢你提交了第一个问题!🔍 你的细心帮助我们发现了新的改进机会,我们会尽快处理。🚀 如果你有更多的想法或疑问,请继续分享,我们非常乐意听取你的声音!🌟 感谢你的支持!

zhiyu1998 commented 2 days ago

看起来确实没有下载,如果下载了日志会跳进度条,这个可能是环境问题,我也没办法,试试换换dns之类的

llllin2333 commented 2 days ago

看起来确实没有下载,如果下载了日志会跳进度条,这个可能是环境问题,我也没办法,试试换换dns之类的

通过修改服务器安全组以及换代理软件开全局就正常了,感谢大佬👍