Hari baik untuk semua
Saya ingin mengunduh semua musik saya dari VKontakte ke USB flash drive, seperti di masa lalu yang indah. Sedikit googling dan tidak menemukan sesuatu yang kurang lebih dapat diterima, saya memutuskan untuk bertindak sendiri. Setelah setengah jam, kami mendapatkan naskah yang berfungsi untuk diri kami sendiri. Jadi mari kita mulai.
Agar berfungsi, Anda perlu mengunduh vk_api dan meminta modul!
Untuk memulai, sambungkan modul yang diperlukan dan deklarasikan beberapa variabel:
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/'
Sekarang kami akan menulis metode otorisasi ke akun VKontakte Anda:
def Auth(new=False): try: USERDATA_FILE = r"AppData/UserData.datab"
Metode akan memeriksa apakah kita sudah login sebelumnya? Jika ini terjadi, maka Anda dapat melanjutkan di akun ini, atau masuk lagi. Dalam hal ini, data lama akan dihapus.
Selanjutnya, kami menulis metode auth_handler, yang diperlukan untuk otorisasi dalam akun di mana otentikasi dua faktor diaktifkan:
def auth_handler(): code = input(" \n> ") remember_device = True
Jadi, sekarang kita bisa masuk ke VKontakte. Dalam metode Auth, metode SaveUserData () disebutkan, diperlukan untuk menyimpan data. Mari kita tulis:
def SaveUserData(login, password, profile_id): USERDATA_FILE = r"AppData/UserData.datab" if (not os.path.exists("AppData")):
Data akan direkam dalam bentuk biner, agar tidak menyimpan login dan kata sandi pengguna dalam bentuk yang jelas.
Tetap menulis metode untuk mengunduh audio dari VKontakte, mari kita lakukan ini:
def main(): try: if (not os.path.exists("AppData")): os.mkdir("AppData") if not os.path.exists(path): os.makedirs(path)
Yah, itu dia. Sekarang kami memiliki skrip yang berfungsi untuk mengunduh rekaman audio dari VKontakte.
Seperti inilah keseluruhan kode sumber:
Tampilkan kode sumber 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"
Saya baru belajar, jadi saya akan senang dengan semua komentar dalam kode. Terima kasih atas perhatian anda