Migrate BiliBili watched anime to Bangumi

Overview

说明

之前为了将B站看过的动画迁移到bangumi写的, 本来只是自己用, 但公开可能对其他人会有帮助.

仓库最近无法维护, 程序有很多缺点, 欢迎 PR 和 Contributors

使用说明

  1. Python版本要求:Python 3.8+

  2. 使用前安装依赖包:

    pip install -r requirements.txt
    
  3. 配置 Bilibili-API :

    如果 Bilibili 个人隐私设置为 不公开 番剧观看信息,则需要获取身份验证信息,获取方法详见此处

    获取后在 bili2bangumi.py 中填入 sessdatacsrf 信息

    # bili2bangumi.py 第 22 行:
    
    uid = 12345                    # Bilibili 用户 ID,必填
    sessdata = "此处填入 sessdata"  # 填入 sessdata,选填
    csrf = "此处填入 csrf"          # 填入 csrf ,选填
    
  4. Bangumi API OAuth2 授权配置:

    需获取并填入 client_idclient_secret

    下面是获取方法:

    1. Bangumi 开发平台 中创建新应用,如下图

      image

      类型选 “应用”,其余随意填写

      image

    2. 获取 App IDApp Secret

      并将 回调地址 设置为 http://localhost:3000

      image

    3. App IDApp Secret 填入 bili2bangumi.py 中:

      # bili2bangumi.py 第 28 行
      
      client_id = '此处填入 App ID'          # 必填,填入 App ID
      client_secret = '此处填入 App Secret'  # 必填,填入 App Secret
      
  5. 在完成上述步骤后,运行程序:

    python bili2bangumi.py
    
Comments
  • 报错,详情见内

    报错,详情见内

    PS D:\Code\Bilibili2Bangumi> python bili2bgm.py 请在弹出的授权页面中点击授权。 若授权页面没有自动弹出,请手动复制链接至浏览器中打开: https://bgm.tv/oauth/authorize?client_id=bgm184060850037e220f&response_type=code 正在尝试取得授权... Traceback (most recent call last): File "bili2bgm.py", line 44, in loop.run_until_complete(main()) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\asyncio\base_events.py", line 587, in run_until_complete return future.result() File "bili2bgm.py", line 34, in main bgm_auth_data = await auth_bgm_task File "D:\Code\Bilibili2Bangumi\auth.py", line 83, in auth_bgm f'{bgm_auth_data_raw["token_type"]}' KeyError: 'token_type'

    上述问题不再深究

    bug 
    opened by CberYellowstone 15
  • Socket 无法获取到 code

    Socket 无法获取到 code

    报错信息

    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfc in position 8: invalid start byte
    

    出错位置

    https://github.com/wopub/Bilibili2Bangumi/blob/fd531b434980e41d4fb60e3729a366cbb06f1bba/lib/auth.py#L67

    后面这个 ignore 是我加的,但忽略还是解析不到code,不知道是哪里出了问题 @CberYellowstone

    bug 
    opened by SINC-G 7
  • 保持原追番状态、自动更新看过动画的分集进度、异步网络操作和其他特性

    保持原追番状态、自动更新看过动画的分集进度、异步网络操作和其他特性

    主要新特性:

    • 保持原追番状态(想看-在看-看过)
    • 自动更新看过动画的分集进度
    • 完全使用异步网络操作,速度提升数十倍
    • 兼容最新的bilibili-api>=5.0

    其他新特性:

    • 异常自动重试
    • 更友好的提示信息
    • 自动打开更新失败的动画的 Bilibili 页面(可选)
    • 使用pipenv自动处理依赖
    • 不再依赖requests
    opened by NKID00 3
  • Fix typo

    Fix typo

    不存在字段 'auth_data',只有'bgm_auth_data' 未修改前报错信息:

    Traceback (most recent call last): File "bili2bgm.py", line 44, in loop.run_until_complete(main()) File "D:\anaconda3\lib\asyncio\base_events.py", line 579, in run_until_complete return future.result() File "bili2bgm.py", line 38, in main await get_and_update(bili2bgm_map, bili_auth_data, BILI_UID, bgm_auth_data) File "update.py", line 241, in get_and_update await data.update_bgm_data_task File "update.py", line 137, in update_bgm_data await gather(*data.update_one_bgm_data_tasks) File "update.py", line 92, in update_one_bgm_data lambda: client.post( File "utilities.py", line 67, in try_for_times_async_chain result = await func() File "update.py", line 95, in headers={'Authorization': data.auth_data} AttributeError: 'types.SimpleNamespace' object has no attribute 'auth_data'

    opened by FinBird 1
  • 适配新的 Bangumi API 并改许可证为 AGPL-3.0-only

    适配新的 Bangumi API 并改许可证为 AGPL-3.0-only

    部分被弃用而且已在文档中被删除的旧 API 虽然还能工作但可能会在不知什么时候突然不工作。

    新 API 的后端是 AGPL-3.0-only 的因此要适配新 API 的话大概也要改许可证为 AGPL-3.0-only。于是征求下目前4位贡献者的意见,同意的话点个 emoji 或者回个同意。

    • [x] @SINC-G
    • [x] @CberYellowstone
    • [x] @FinBird
    • [x] @NKID00

    ~(高考刚考完又要开工了)~

    refactor 
    opened by NKID00 3
Releases(v0.1.1)
  • v0.1.1(Sep 25, 2021)

    🎉更新日志

    • 合并了 #17(感谢 @CberYellowstone)
    • 修复了 API 调用错误

    要使用该版本的 Bilibili2Bangumi,下载下方的 Source code (zip) 解压即可。

    Source code(tar.gz)
    Source code(zip)
  • v0.1.0(Aug 29, 2021)

    🎉更新日志

    • 合并了 #3 #4 #6 #7 #9 #14(感谢 @CberYellowstone @FinBird )
    • 全部使用异步网络操作
    • 增加保持原追番状态功能
    • 增加自动点格子功能
    • 增加一些可由用户选择的选项
    • 增加一些友好的提示信息
    • 使用更有意义的 user-agent Bilibili2Bangumi/<Bilibili2Bangumi 版本> (https://github.com/wopub/Bilibili2Bangumi) aiohttp/<aiohttp 版本>
    • 添加许多调试信息
    • 提高了一点点性能

    要使用该版本的 Bilibili2Bangumi,下载下方的 Source code (zip) 解压即可。

    Source code(tar.gz)
    Source code(zip)
Bifrost C2. Open-source post-exploitation using Discord API

Bifrost Command and Control What's Bifrost? Bifrost is an open-source Discord BOT that works as Command and Control (C2). This C2 uses Discord API for

38 Dec 05, 2022
Telegram File Renamer Bot

RENAMER_BOT Telegram File Renamer Bot Configs TG_BOT_TOKEN - Get bot token from @BotFather API_ID - From my.telegram.org API_HASH - From my.telegram.o

Lntechnical 37 Dec 27, 2022
A Telegram Bot to Play Audio in Voice Chats With Youtube and Deezer support. Supports Live streaming from youtube Supports Mega Radio Fm Streamings

Bot To Stream Musics on PyTGcalls with Channel Support. A Telegram Bot to Play Audio in Voice Chats With Supports Live streaming from youtube and Mega

Shamil Habeeb 37 Dec 15, 2022
Automation application was made by me using Google, Sheet and Slack APIs with Python.

README This application is used to transfer the data in the xlsx document we have to the Google Drive environment and calculate the "total budget" wit

3 Apr 12, 2022
Davide Gallitelli 3 Dec 21, 2021
PRAW, an acronym for "Python Reddit API Wrapper", is a python package that allows for simple access to Reddit's API.

PRAW: The Python Reddit API Wrapper PRAW, an acronym for "Python Reddit API Wrapper", is a Python package that allows for simple access to Reddit's AP

Python Reddit API Wrapper Development 3k Dec 29, 2022
Python client for the LightOn Muse API

lightonmuse Python bindings to production-ready intelligence primitives powered by state-of-the-art language models. Create. Process. Understand. Lear

LightOn 12 Apr 10, 2022
Python package for agilex robotics mobile base platform

This is Python API for Agilex Robotics Mobile base This is a python API for Can communication with Agilex Robotics Mobile base and controlling it. Sup

7 Sep 06, 2022
DankMemer-Farmer - Autofarm Self-Bot for Discord bot Named Dankmemer.

DankMemer-Farmer Autofarm Self-Bot for Discord bot Named Dankmemer. Warning We are not responsible if you got banned, since "self-bots" outside of the

Mole 16 Dec 14, 2022
Working TikTok Username Auto-Claimer/Sniper/Swapper which will autoclaim username if it´s available

TikTok-AutoClaimer Working TikTok Username Auto-Claimer/Sniper/Swapper which will autoclaim username if it´s available Usage Python 3.6 or above is re

Kevin 18 Dec 08, 2022
SEP Finder Bot

SEP Finder Bot This is a Telegram bot that will help you find the correct SEP and Baseband files to use for your device with futurerestore. Usage A ho

6 Dec 03, 2022
This repo contains a simple library for work with Eitaa messenger's api

Eitaa PyKit This repo contains a simple library for work with Eitaa messenger's api PyPI Page : https://pypi.org/project/Eitaa-PyKit Install via pip p

Bistcuite 20 Sep 16, 2022
📦 Opensource Python wrapper for Hiven's REST and WebSocket API

hiven.py 📦 Opensource Python wrapper for Hiven's REST and WebSocket API Installation pip install -U hiven.py Usage hiven.py is currently under devel

Kevin Thomas 3 Sep 03, 2021
Morpy Bot Linux - Morpy Bot Linux With Python

Morpy_Bot_Linux Guide to using the robot : 🔸 Lsmod = to identify admins and st

2 Jan 20, 2022
A Python library to access Instagram's private API.

Instagram Private API A Python wrapper for the Instagram private API with no 3rd party dependencies. Supports both the app and web APIs. Overview I wr

2.6k Jan 05, 2023
Turns any script into a telegram bot

pytobot Turns any script into a telegram bot Install pip install --upgrade pytobot Usage Script: while True: message = input() if message == "

Dmitry Kotov 17 Jan 06, 2023
Discord Crypto Payment Cards Selfbot

A Discord selfbot that serves the purpose of displaying text and QR versions of your BTC, LTC & ETH payment information for easy and simple commercial or personal transactions.

2 Apr 12, 2022
Experiment to find the best time to look for an appointment at the Berlin Bürgeramt

Bürgeramt appointment experiment Checks Berlin.de for free Anmeldung appointments every X minutes, then analyses the results. How to use Run get-page.

Nicolas Bouliane 42 Jan 02, 2023
Mventory is an API-driven solution for Makerspaces, Tinkerers, and Hackers.

Mventory is an API-driven inventory solution for Makers, Makerspaces, Hackspaces, and just about anyone else who needs to keep track of "stuff".

Make Monmouth 107 Dec 21, 2022
AuthGG is a Python library for dealing with Auth.gg apis

AuthGG AuthGG is a Python library for dealing with Auth.gg apis Installation Use the package manager pip to install requests Add the auth.py file in y

ExtremeDev 1 Dec 20, 2021