Giter Club home page Giter Club logo

bili_upload_tool's Introduction

暂时不再维护。

~~# bili_upload_tool

~~搬运视频到 b 站工具

~~# 简介

~~这是一个用 Python写的搬运视频并上传到Bilibili(Web)的工具

~~### 小声宣布:自动搬运工具可以测试了。传送门

~~## 特色

~~- Docker容器化 ~~- 无需处理任何操作环境 ~~- 官方 API,保证账号正常 ~~- 更换 Fastapi 异步框架,快人亿步! ~~- 持续更新

~~# 快速部署(Docker-compose)

~~无需clone整个仓库!!!但是需要安装Docker及Docker-compose环境

~~1.复制docker-compose.yaml.env文件

~~2.填入 Secret image ~~3.然后执行以下代码

~~ docker-compose up -d ~~

~~最后打开网站 yoursite:3000 ~~测试:yoursite:20123,有 Hello 返回即可。

~~### (Opt):如果是Arm架构请修改

~~example

~~## 上传示例(Example)

~~这里查看上传示例

~~# FAQ

~~Q:部署过程中有问题怎么办?

~~A:请提issue

~~Q:需要进一步讨论?

~~A:请提discussions

~~Q:有时上传失败咋办?

~~A:再提交多次

~~Q:更新频率?

~~A:空闲都会维护

~~### 电报群-交流

更新

~~详情请点这里

~~# 感谢

~~yt-dlp for downloading ForgQi for upload Donate for a coffee!

~~donate by wechat

~~alipay ~~

bili_upload_tool's People

Contributors

dependabot[bot] avatar googidaddy avatar xu8117 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

bili_upload_tool's Issues

开始运行时遇到问题

运行后无法打开链接
QQ截图20220516120321
不会程序没用过docker,请问测试用的yoursite:3000是需要将yoursite替换掉的吗?直接打开是无法访问...

问题

点了上传,毫无反应

增加分区

能否加一个科技—>数码的分区呀?

关于程序在docker上运行的问题

您好,我把程序放在了windows的doucker上运行,每次点提交之后会出现此界面,电脑已经用netch全局代理,希望您帮忙分析一下,谢谢。

docker-compose-api-1 | INFO: 172.18.0.1:38666 - "OPTIONS /upload HTTP/1.1" 200 OK
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading webpage
docker-compose-api-1 | WARNING: [youtube] Unable to download webpage: <urlopen error [Errno -3] Temporary failure in name resolution>
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading android player API JSON
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading iframe API JS
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading player 4248d311
docker-compose-api-1 | WARNING: [youtube] Download of https://www.youtube.com/s/player/4248d311/player_ias.vflset/en_US/base.js failed: <urlopen error [Errno -3] Temporary failure in name resolution>
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading web player API JSON
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading player 4248d311
docker-compose-api-1 | WARNING: [youtube] nsig extraction failed: You may experience throttling for some formats
docker-compose-api-1 | n = wOSOQNG-0b70T4Ff ; player = https://www.youtube.com/s/player/4248d311/player_ias.vflset/en_US/base.js
docker-compose-api-1 | L_U7b1aWPY4: Traceback (most recent call last):
docker-compose-api-1 | File "/usr/local/lib/python3.9/urllib/request.py", line 1346, in do_open
docker-compose-api-1 | h.request(req.get_method(), req.selector, req.data, headers,
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 1279, in request
docker-compose-api-1 | self._send_request(method, url, body, headers, encode_chunked)
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 1325, in _send_request
docker-compose-api-1 | self.endheaders(body, encode_chunked=encode_chunked)
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 1274, in endheaders
docker-compose-api-1 | self._send_output(message_body, encode_chunked=encode_chunked)
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 1034, in _send_output
docker-compose-api-1 | self.send(msg)
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 974, in send
docker-compose-api-1 | self.connect()
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 1441, in connect
docker-compose-api-1 | super().connect()
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 945, in connect
docker-compose-api-1 | self.sock = self._create_connection(
docker-compose-api-1 | File "/usr/local/lib/python3.9/socket.py", line 823, in create_connection
docker-compose-api-1 | for res in getaddrinfo(host, port, 0, SOCK_STREAM):
docker-compose-api-1 | File "/usr/local/lib/python3.9/socket.py", line 954, in getaddrinfo
docker-compose-api-1 | for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
docker-compose-api-1 | socket.gaierror: [Errno -3] Temporary failure in name resolution
docker-compose-api-1 |
docker-compose-api-1 | During handling of the above exception, another exception occurred:
docker-compose-api-1 |
docker-compose-api-1 | Traceback (most recent call last):
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/common.py", line 715, in _request_webpage
docker-compose-api-1 | return self._downloader.urlopen(url_or_request)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/YoutubeDL.py", line 3385, in urlopen
docker-compose-api-1 | return self._opener.open(req, timeout=self._socket_timeout)
docker-compose-api-1 | File "/usr/local/lib/python3.9/urllib/request.py", line 517, in open
docker-compose-api-1 | response = self._open(req, data)
docker-compose-api-1 | File "/usr/local/lib/python3.9/urllib/request.py", line 534, in _open
docker-compose-api-1 | result = self._call_chain(self.handle_open, protocol, protocol +
docker-compose-api-1 | File "/usr/local/lib/python3.9/urllib/request.py", line 494, in _call_chain
docker-compose-api-1 | result = func(*args)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/utils.py", line 2929, in https_open
docker-compose-api-1 | return self.do_open(functools.partial(
docker-compose-api-1 | File "/usr/local/lib/python3.9/urllib/request.py", line 1349, in do_open
docker-compose-api-1 | raise URLError(err)
docker-compose-api-1 | urllib.error.URLError: <urlopen error [Errno -3] Temporary failure in name resolution>
docker-compose-api-1 |
docker-compose-api-1 | During handling of the above exception, another exception occurred:
docker-compose-api-1 |
docker-compose-api-1 | Traceback (most recent call last):
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/youtube.py", line 1881, in _decrypt_nsig
docker-compose-api-1 | self._player_cache[player_id] = self._extract_n_function(video_id, player_url)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/youtube.py", line 1901, in _extract_n_function
docker-compose-api-1 | jscode = self._load_player(video_id, player_url)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/youtube.py", line 1748, in _load_player
docker-compose-api-1 | code = self._download_webpage(
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/common.py", line 880, in _download_webpage
docker-compose-api-1 | res = self._download_webpage_handle(
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/common.py", line 748, in _download_webpage_handle
docker-compose-api-1 | urlh = self._request_webpage(url_or_request, video_id, note, errnote, fatal, data=data, headers=headers, query=query, expected_status=expected_status)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/common.py", line 733, in _request_webpage
docker-compose-api-1 | raise ExtractorError(errmsg, sys.exc_info()[2], cause=err)
docker-compose-api-1 | yt_dlp.utils.ExtractorError: Download of https://www.youtube.com/s/player/4248d311/player_ias.vflset/en_US/base.js failed: <urlopen error [Errno -3] Temporary failure in name resolution> (caused by URLError(gaierror(-3, 'Temporary failure in name resolution')))
docker-compose-api-1 | (caused by ExtractorError("Download of https://www.youtube.com/s/player/4248d311/player_ias.vflset/en_US/base.js failed: <urlopen error [Errno -3] Temporary failure in name resolution> (caused by URLError(gaierror(-3, 'Temporary failure in name resolution')))")); please report this issue on https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see https://github.com/yt-dlp/yt-dlp on how to update. Be sure to call yt-dlp with the --verbose flag and include its complete output.
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading player 4248d311
docker-compose-api-1 | WARNING: [youtube] nsig extraction failed: You may experience throttling for some formats
docker-compose-api-1 | n = wOSOQNG-0b70T4Ff ; player = https://www.youtube.com/s/player/4248d311/player_ias.vflset/en_US/base.js
docker-compose-api-1 | L_U7b1aWPY4: Traceback (most recent call last):
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/youtube.py", line 1881, in _decrypt_nsig
docker-compose-api-1 | self._player_cache[player_id] = self._extract_n_function(video_id, player_url)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/youtube.py", line 1901, in _extract_n_function
docker-compose-api-1 | jscode = self._load_player(video_id, player_url)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/youtube.py", line 1748, in _load_player
docker-compose-api-1 | code = self._download_webpage(
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/common.py", line 880, in _download_webpage
docker-compose-api-1 | res = self._download_webpage_handle(
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/common.py", line 752, in _download_webpage_handle
docker-compose-api-1 | content = self._webpage_read_content(urlh, url_or_request, video_id, note, errnote, fatal, encoding=encoding)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/yt_dlp/extractor/common.py", line 802, in _webpage_read_content
docker-compose-api-1 | webpage_bytes = urlh.read()
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 475, in read
docker-compose-api-1 | s = self._safe_read(self.length)
docker-compose-api-1 | File "/usr/local/lib/python3.9/http/client.py", line 625, in _safe_read
docker-compose-api-1 | chunk = self.fp.read(min(amt, MAXAMOUNT))
docker-compose-api-1 | File "/usr/local/lib/python3.9/socket.py", line 704, in readinto
docker-compose-api-1 | return self._sock.recv_into(b)
docker-compose-api-1 | File "/usr/local/lib/python3.9/ssl.py", line 1241, in recv_into
docker-compose-api-1 | return self.read(nbytes, buffer)
docker-compose-api-1 | File "/usr/local/lib/python3.9/ssl.py", line 1099, in read
docker-compose-api-1 | return self._sslobj.read(len, buffer)
docker-compose-api-1 | socket.timeout: The read operation timed out
docker-compose-api-1 | (caused by timeout('The read operation timed out')); please report this issue on https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see https://github.com/yt-dlp/yt-dlp on how to update. Be sure to call yt-dlp with the --verbose flag and include its complete output.
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading initial data API JSON
docker-compose-api-1 | WARNING: [youtube] <urlopen error [Errno -3] Temporary failure in name resolution>. Retrying ...
docker-compose-api-1 | [youtube] L_U7b1aWPY4: Downloading initial data API JSON (retry #1)
docker-compose-api-1 | [info] L_U7b1aWPY4: Downloading 1 format(s): 303+251
docker-compose-api-1 | [info] Downloading video thumbnail 41 ...
docker-compose-api-1 | [info] Writing video thumbnail 41 to: L_U7b1aWPY4.webp
docker-compose-api-1 | WARNING: Unable to download video thumbnail 41: The read operation timed out
docker-compose-api-1 | [info] Downloading video thumbnail 40 ...
docker-compose-api-1 | [info] Writing video thumbnail 40 to: L_U7b1aWPY4.jpg
docker-compose-api-1 | ERROR: unable to download video data: <urlopen error [Errno -3] Temporary failure in name resolution>
docker-compose-api-1 | ERROR: unable to download video data: <urlopen error [Errno -3] Temporary failure in name resolution>
docker-compose-api-1 | INFO: 172.18.0.1:38666 - "POST /upload HTTP/1.1" 500 Internal Server Error
docker-compose-api-1 | ERROR: Exception in ASGI application
docker-compose-api-1 | Traceback (most recent call last):
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/uvicorn/protocols/http/httptools_impl.py", line 375, in run_asgi
docker-compose-api-1 | result = await app(self.scope, self.receive, self.send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/uvicorn/middleware/proxy_headers.py", line 75, in call
docker-compose-api-1 | return await self.app(scope, receive, send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/fastapi/applications.py", line 259, in call
docker-compose-api-1 | await super().call(scope, receive, send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/applications.py", line 112, in call
docker-compose-api-1 | await self.middleware_stack(scope, receive, send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/middleware/errors.py", line 181, in call
docker-compose-api-1 | raise exc
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/middleware/errors.py", line 159, in call
docker-compose-api-1 | await self.app(scope, receive, _send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/middleware/cors.py", line 92, in call
docker-compose-api-1 | await self.simple_response(scope, receive, send, request_headers=headers)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/middleware/cors.py", line 147, in simple_response
docker-compose-api-1 | await self.app(scope, receive, send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/exceptions.py", line 82, in call
docker-compose-api-1 | raise exc
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/exceptions.py", line 71, in call
docker-compose-api-1 | await self.app(scope, receive, sender)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 21, in call
docker-compose-api-1 | raise e
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in call
docker-compose-api-1 | await self.app(scope, receive, send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 656, in call
docker-compose-api-1 | await route.handle(scope, receive, send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 259, in handle
docker-compose-api-1 | await self.app(scope, receive, send)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 61, in app
docker-compose-api-1 | response = await func(request)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 226, in app
docker-compose-api-1 | raw_response = await run_endpoint_function(
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 161, in run_endpoint_function
docker-compose-api-1 | return await run_in_threadpool(dependant.call, **values)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/starlette/concurrency.py", line 39, in run_in_threadpool
docker-compose-api-1 | return await anyio.to_thread.run_sync(func, *args)
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/anyio/to_thread.py", line 28, in run_sync
docker-compose-api-1 | return await get_asynclib().run_sync_in_worker_thread(func, *args, cancellable=cancellable,
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 818, in run_sync_in_worker_thread
docker-compose-api-1 | return await future
docker-compose-api-1 | File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 754, in run
docker-compose-api-1 | result = context.run(func, *args)
docker-compose-api-1 | File "/app/./main.py", line 44, in upload
docker-compose-api-1 | res = main(data.dict())
docker-compose-api-1 | File "/app/./upload.py", line 16, in main
docker-compose-api-1 | video_path = video_info.get("video_path")
docker-compose-api-1 | AttributeError: 'bool' object has no attribute 'get'

PROXY怎么填写?

我有网络代理,但是不知道填写格式是什么?能举例下吗?

一些需求

1.将Cookie,ytdl代理等部分配置从前端存储至Yaml文件。
2.增加自动搬运,自动搬运一些频道的视频(定时遍历检测视频是否更新)。
3.增加前后端手动部署教程。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.