祝大家有美好的一天。
我想像过去那样将所有音乐从VKontakte下载到USB闪存驱动器。 我经过一番谷歌搜索,几乎没有发现或多或少可以接受的东西,我决定自己行动。 半个小时后,我们为自己准备了一个工作脚本。 因此,让我们开始吧。
要工作,您需要下载vk_api并请求模块!
首先,连接必要的模块并声明一些变量:
import os import pickle import vk_api import requests from vk_api import audio from time import time vk_file = "vk_config.v2.json" REQUEST_STATUS_CODE = 200 path = 'vk_music/'
现在,我们将授权方法写入您的VKontakte帐户:
def Auth(new=False): try: USERDATA_FILE = r"AppData/UserData.datab"
该方法将检查我们是否已经较早登录? 如果发生这种情况,那么您可以继续使用该帐户或再次登录。 在这种情况下,旧数据将被删除。
接下来,我们编写auth_handler方法,在启用了双重身份验证的帐户中进行授权时需要使用该方法:
def auth_handler(): code = input(" \n> ") remember_device = True
因此,现在我们可以登录到VKontakte。 在Auth方法中,提到了SaveUserData()方法,它是保存数据所必需的。 让我们来写:
def SaveUserData(login, password, profile_id): USERDATA_FILE = r"AppData/UserData.datab" if (not os.path.exists("AppData")):
数据将以二进制形式记录,以免以明文形式存储用户的登录名和密码。
仍然需要编写一种从VKontakte下载音频的方法,让我们这样做:
def main(): try: if (not os.path.exists("AppData")): os.mkdir("AppData") if not os.path.exists(path): os.makedirs(path)
好吧,就是这样。 现在,我们有了一个工作脚本,可以从VKontakte下载录音。
整个源代码如下所示:
显示源代码 import os import pickle import vk_api import requests from vk_api import audio from time import time __version__ = 'VK Music Downloader v1.0' APP_MESSAGE = ''' _ . ___ /\\ | | | \\ | | | \\ / | / /__\\ | | | \\ | | | \\ / |/ / \\ |___| |__/ | |___| \\/ |\\ ''' vk_file = "vk_config.v2.json" REQUEST_STATUS_CODE = 200 path = 'vk_music/' def auth_handler(remember_device=None): code = input(" \n> ") if (remember_device == None): remember_device = True return code, remember_device def SaveUserData(login, password, profile_id): USERDATA_FILE = r"AppData/UserData.datab" SaveData = [login, password, profile_id] with open(USERDATA_FILE, 'wb') as dataFile: pickle.dump(SaveData, dataFile) def Auth(new=False): try: USERDATA_FILE = r"AppData/UserData.datab"
我只是在学习,所以我会对代码中的所有注释感到高兴。 谢谢您的关注。