查看: 307|回复: 1

[其他发布] 某音图文、BGM获取,下载到本地-无水印

[复制链接]
发表于 2022-9-23 11:22 | 显示全部楼层 |阅读模式
非法程序、 2022-9-23 11:22 307 1 显示全部楼层
执行程序,然后将APP端,或者pc端获取的分享,填写到程序中;
Python版本:Python3.8
提取文案、无水印图片、背景音乐;
  1. from urllib import request
  2. import re
  3. import requests


  4. class DyDownload():
  5.     def desc(self, desc_data):
  6.         # 将文案内容保存到txt文档内
  7.         # #根据文案长度提取特定长度的文字作为文件名
  8.         if len(desc) > 20:
  9.             desc_name = desc[1:20]
  10.         else:
  11.             desc_name = desc[1:10]
  12.         f = open(desc_name + '.txt', 'w', encoding='utf-8')
  13.         f.write(desc_data)
  14.         f.close()
  15.         print("文案保存成功")

  16.     def music(self, name, url):
  17.         # 保存音乐
  18.         r = requests.get(url)
  19.         with open(name + '.mp3', 'wb') as f:
  20.             f.write(r.content)
  21.         print("音乐保存成功")

  22.     def images(self, name, url):
  23.         # 获取图片并保存图片
  24.         r = requests.get(url)
  25.         with open(name + '.jpg', 'wb') as f:
  26.             f.write(r.content)


  27. Download = DyDownload()
  28. api = "https://www.douyin.com/web/api/v2/aweme/iteminfo/?item_ids="

  29. # 图文分享链接
  30. short_url = input("请输入抖音图文短链接")

  31. # 短连接解析并且取出内容ID
  32. content_id = re.findall(r"\b\d+\b", request.urlopen(short_url).geturl())[0]

  33. # 设置请求头
  34. headers = {
  35.     "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"}
  36. # 请求返回的json数据
  37. response = requests.get(api + content_id, headers=headers).json()

  38. # 获取图片数量
  39. image_quantity = response["item_list"][0]["images"]

  40. if image_quantity is None:
  41.     print(f"{content_id}不是图文无法下载")
  42. else:
  43.     print("正在获取图文信息..")
  44.     # 获取图片列表
  45.     images_content = response["item_list"][0]["images"]
  46.     # 获取账号主昵称
  47.     nickname = response["item_list"][0]["author"]["nickname"]
  48.     # 获取音乐名称
  49.     music_name = response["item_list"][0]["music"]["title"]
  50.     # 获取音乐下载地址
  51.     music_url = response["item_list"][0]["music"]["play_url"]["uri"]
  52.     # 获取文案
  53.     desc = response["item_list"][0]["desc"]

  54.     Download.desc(desc)
  55.     Download.music(music_name, music_url)

  56.     for i in range(len(images_content)):
  57.         images_url = images_content[i]["url_list"][3]
  58.         Download.images(str(i), images_url)
  59.         print(f"{str(i)}号图片保存成功")
  60.     print("文案,音乐,图片,任务全部完成")
复制代码


发表于 2022-9-23 20:51 | 显示全部楼层
感谢楼主,好人一生平安
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 返回列表 发新帖

快速回复 返回顶部 返回列表