21 次代碼提交 b5ab59b965 ... 59b0ff6f86

作者 SHA1 備註 提交日期
  czyc 59b0ff6f86 刷新 2 月之前
  Cloudmistery b5ab59b965 push 5 月之前
  Cloudmistery 806101aed6 集成爬虫 5 月之前
  Cloudmistery 0788516b58 修复路径错误,取消30字符文件名机制 5 月之前
  Cloudmistery 8ba2a379c8 新增单独的音频下载程序 5 月之前
  Cloudmistery 75b12e2df8 稳定版本,可用,最基本的功能开发完成 5 月之前
  Cloudmistery 79960eef71 完全版 7 月之前
  Cloudmistery a756c2b324 模块化修复中 7 月之前
  Cloudmistery 780706b895 用分离请求头方法重写中,还有部分错误 7 月之前
  Cloudmistery ed9d3c4118 用分离请求头方法重写中,还有部分错误 7 月之前
  Cloudmistery 1f956cec7e 推送 7 月之前
  Cloudmistery 56f9e10ea5 更新日志 7 月之前
  Cloudmistery 4b12a1e6c3 版本更新,抽象化使用方法,解决无法获取mp3文件的bug 7 月之前
  Cloudmistery 9435cc345d 格式化参数,还有一部分音频文件无法获取,继续排查问题 7 月之前
  Cloudmistery 35db56565d 优化 7 月之前
  Cloudmistery 115d062384 此版本优化了文件名违法字符问题 7 月之前
  Cloudmistery 31994b5ed1 功能完善 7 月之前
  Cloudmistery 83d7ad2209 此次操作无效 7 月之前
  Cloudmistery 5840ee851e 更新到完全版本,无障碍使用 7 月之前
  Cloudmistery 81299cdaa2 bilibili音视频爬虫程序 7 月之前
  Cloudmistery d9847ba789 bilibili音视频爬虫程序 7 月之前

+ 0 - 7
.gitignore

@@ -1,7 +0,0 @@
-*.mp3
-*.aac
-Audio
-Files
-*.mp4
-Video
-down

+ 0 - 8
.idea/.gitignore

@@ -1,8 +0,0 @@
-# Default ignored files
-/shelf/
-/workspace.xml
-# Datasource local storage ignored files
-/dataSources/
-/dataSources.local.xml
-# Editor-based HTTP Client requests
-/httpRequests/

+ 0 - 8
.idea/bilibili_files.iml

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module type="PYTHON_MODULE" version="4">
-  <component name="NewModuleRootManager">
-    <content url="file://$MODULE_DIR$" />
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-  </component>
-</module>

+ 0 - 48
.idea/inspectionProfiles/Project_Default.xml

@@ -1,48 +0,0 @@
-<component name="InspectionProjectProfileManager">
-  <profile version="1.0">
-    <option name="myName" value="Project Default" />
-    <inspection_tool class="DuplicatedCode" enabled="true" level="WEAK WARNING" enabled_by_default="true">
-      <Languages>
-        <language minSize="53" name="Python" />
-      </Languages>
-    </inspection_tool>
-    <inspection_tool class="PyPep8Inspection" enabled="false" level="WEAK WARNING" enabled_by_default="false">
-      <option name="ignoredErrors">
-        <list>
-          <option value="E101" />
-          <option value="E251" />
-          <option value="E501" />
-          <option value="W292" />
-          <option value="E303" />
-          <option value="E305" />
-          <option value="E302" />
-          <option value="E231" />
-        </list>
-      </option>
-    </inspection_tool>
-    <inspection_tool class="PyPep8NamingInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
-      <option name="ignoredErrors">
-        <list>
-          <option value="N802" />
-        </list>
-      </option>
-    </inspection_tool>
-    <inspection_tool class="PyShadowingBuiltinsInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
-      <option name="ignoredNames">
-        <list>
-          <option value="list" />
-        </list>
-      </option>
-    </inspection_tool>
-    <inspection_tool class="PyUnresolvedReferencesInspection" enabled="true" level="WARNING" enabled_by_default="true">
-      <option name="ignoredIdentifiers">
-        <list>
-          <option value="keras.layers.convolutional" />
-          <option value="keras.layers.CuDNNLSTM" />
-          <option value="float.strftime" />
-          <option value="app.db" />
-        </list>
-      </option>
-    </inspection_tool>
-  </profile>
-</component>

+ 0 - 6
.idea/inspectionProfiles/profiles_settings.xml

@@ -1,6 +0,0 @@
-<component name="InspectionProjectProfileManager">
-  <settings>
-    <option name="USE_PROJECT_PROFILE" value="false" />
-    <version value="1.0" />
-  </settings>
-</component>

+ 0 - 7
.idea/misc.xml

@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="JavaScriptSettings">
-    <option name="languageLevel" value="ES6" />
-  </component>
-  <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.9" project-jdk-type="Python SDK" />
-</project>

+ 0 - 8
.idea/modules.xml

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="ProjectModuleManager">
-    <modules>
-      <module fileurl="file://$PROJECT_DIR$/.idea/bilibili_files.iml" filepath="$PROJECT_DIR$/.idea/bilibili_files.iml" />
-    </modules>
-  </component>
-</project>

+ 0 - 6
.idea/vcs.xml

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="VcsDirectoryMappings">
-    <mapping directory="$PROJECT_DIR$" vcs="Git" />
-  </component>
-</project>

+ 0 - 6
Bilibili.py

@@ -1,6 +0,0 @@
-# -*- coding: UTF-8 -*-
-from utils.Clip_bili import *
-
-if __name__ == '__main__':
-    downloads()
-    # downloadsAudio()

+ 0 - 33
README.md

@@ -1,33 +0,0 @@
-##日志
-###2024/8/12
-`bilibili的爬虫程序
-可以爬取分开的音视频文件`
-
-###2024/9/2
-`增加了合并音视频功能`
-
-###2024/9/3
-`此版本优化了文件名违法字符问题`
-
-###2024/9/13
-`版本更新,抽象化使用方法,解决无法获取mp3文件的bug`
-
-`mp3格式文件依然有概率获取不到`
-
-###2024/9/19
-`用分离请求头方法重写中,还有部分错误`
-
-###2024/9/20
-`完全版`
-
-`为何会出错?
-每个模块都应当独立出来,可以不作为一个文件,也必须def方法`
-
-##阅读文档
-`1.设置原网址url,格式为番号后缀删除;设置文件地址`
-
-`2.设置请求头,用request方法请求到数据`
-
-`3.通过findall方法获取到标题,Save方法保存音视频`
-
-`4.主函数调用方法`

+ 0 - 104
Spider.py

@@ -1,104 +0,0 @@
-# @Author  : @Cloudmistery
-
-"""
-tips:错误记录
-1.headers请求头设置错误导致文件不可读(就是错了)
-2.文件名合法化,不合法的文件名直接创建不了
-3.音频和视频需要分开爬取及合成
-"""
-
-# 请求模块
-import requests
-# 正则模块
-import re
-# json模块
-import json
-# 合并模块
-from moviepy.editor import *
-
-# TODO:修改url和cookie获取你想要的视频,先在本目录下先创建三个文件夹
-# 设置
-url = 'https://www.bilibili.com/video/BV1ki4y1B7LB/'
-A_path = 'Audio/'
-V_path = 'Video/'
-Synth_path = 'File/'
-
-
-# 主程序
-# headers只需要三个参数
-headers = {
-        "Referer": url,
-        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
-        'cookie': 'buvid3=D82F9D33-E75C-8D6E-6D2D-D128A352B3EC99573infoc; '
-                  'b_nut=1730271799; '
-                  '_uuid=363DA659-CAA7-AEE3-31EF-105ADAD95EFA299807infoc; '
-                  'enable_web_push=DISABLE; '
-                  'buvid4=A8A4CC10-7B3C-8459-B07C-EB4E11E948D401840-024103007-fmI38SPP%2F5%2BxXWrCTYgty62zOzJos1uEW8lnI07A3XTkLJ6dLJvsmsAJBqLNPrF9; '
-                  'rpdid=0zbfvUnKtc|3XngooMd|T30|3w1T62JV; '
-                  'header_theme_version=CLOSE; '
-                  'DedeUserID=35990046; '
-                  'DedeUserID__ckMd5=bf34a8eab39f0c11; '
-                  'buvid_fp_plain=undefined; '
-                  'LIVE_BUVID=AUTO3317306871682983; '
-                  'CURRENT_QUALITY=80; '
-                  'fingerprint=afd86aa8ba10b52e21767b02b25b933b; '
-                  'buvid_fp=afd86aa8ba10b52e21767b02b25b933b; '
-                  'CURRENT_FNVAL=4048; '
-                  'bili_ticket=eyJhbGciOiJIUzI1NiIsImtpZCI6InMwMyIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MzIyNjg3OTMsImlhdCI6MTczMjAwOTUzMywicGx0IjotMX0.XrtK4fW5yyBnEWTn4gQeSTZAh_8KweejUzSk9tPDC08; '
-                  'bili_ticket_expires=1732268733; '
-                  'PVID=3; bmg_af_switch=1; '
-                  'bmg_src_def_domain=i2.hdslb.com; '
-                  'b_lsid=AEA3F28F_1934D6025DD; '
-                  'SESSDATA=994c56c3%2C1747721973%2C32480%2Ab1CjC6H2WiSR2TdOw7R4ED2MVj0RDd_OeOczPS9dMUYYuj8I9ilx01iewdYO_1V7J5VSoSVkVtaE1tV0hxRHIwb2tndmJraTd3X3pvcXBleHI4NDhRN3o5YnAtOWlVX1lwVXhTc210RS05VDFkUnVaMUQ3MjBiQ0h1dENpdi1VOU9hLUxycHUzR2RBIIEC; '
-                  'bili_jct=4cd051b6642a32eeb57f558eac9f02f7; '
-                  'sid=6w3kthlu; '
-                  'home_feed_column=5; '
-                  'browser_resolution=1528-712; '
-                  'bsource=search_bing; '
-                  'bp_t_offset_35990046=1002173800399241216'
-}
-
-# 发送请求
-response = requests.get(url=url, headers=headers)
-html = response.text
-
-# 提取,合法化字符并显示 视频标题
-title = re.findall('title="(.*?)"', html)[0]
-if title:
-    illegal_chars = fr'<|>\/:"*?'
-    def remove_illegal_chars(title_ill):
-        for char in illegal_chars:
-            title_ill = title_ill.replace(char, "")
-        return title_ill
-    title = remove_illegal_chars(title)
-print("视频标题:",title)
-
-# 提取视频信息
-info = re.findall('window.__playinfo__=(.*?)</script>', html)[0]
-json_data = json.loads(info)
-
-# 提取音视频链接
-# TODO:设置数值来声明文件品质,0默认最高
-video_url = json_data['data']['dash']['video'][0]['baseUrl']
-audio_url = json_data['data']['dash']['audio'][0]['baseUrl']
-
-# 获取音视频内容
-video_content = requests.get(url=video_url, headers=headers).content
-audio_content = requests.get(url=audio_url, headers=headers).content
-
-# 保存单音频
-with open(A_path + title + '.mp3', mode='wb') as a:
-    a.write(audio_content)
-
-# 保存单视频
-with open(V_path + title + '.mp4', mode='wb') as v:
-    v.write(video_content)
-
-# 合并视频
-audio_path = fr"{A_path}{title}{'.mp3'}"
-audio_clip = AudioFileClip(audio_path)
-video_path = fr"{V_path}{title}{'.mp4'}"
-video_clip = VideoFileClip(video_path)
-audio_clip = audio_clip.set_duration(video_clip.duration)
-video_clip_with_audio = video_clip.set_audio(audio_clip)
-video_clip_with_audio.write_videofile(fr"{Synth_path}{title}{'.mp4'}", codec="libx264", audio_codec="aac")

二進制
__pycache__/Bilibili_Main_Setting.cpython-39.pyc


+ 91 - 0
bili_spider.py

@@ -0,0 +1,91 @@
+# @Author  : @Cloudmistery
+
+"""
+tips:错误记录
+1.headers请求头设置错误导致文件不可读(就是错了)
+2.文件名合法化,不合法的文件名直接创建不了
+3.音频和视频需要分开爬取及合成
+"""
+
+# 请求模块
+import requests
+# 正则模块
+import re
+# json模块
+import json
+# 合并模块
+from moviepy.editor import *
+# html
+import html as h
+
+# TODO:修改url和cookie,爬不到最高画质的主要原因就是没有更新cookie
+
+# 设置
+url = 'https://www.bilibili.com/video/BV1J24y1p75G/?buvid=Y84DF68249678902447EA7D8C8D4E12E9DDC&from_spmid=search.search-result.0.0&is_story_h5=false&mid=VRgCQHIxfkYie40eSwgBqQ%3D%3D&plat_id=114&share_from=ugc&share_medium=iphone&share_plat=ios&share_session_id=37ACC364-AFB3-49B2-AE6D-ECDDEE498D3B&share_source=WEIXIN&share_tag=s_i&timestamp=1737513904&unique_k=JBOVMFJ&up_id=690032002&vd_source=f6247aa12dae1ff1bce74ef0af381757'
+A_path = 'Audio/'
+V_path = 'Video/'
+
+# Synth_path = 'File/美少女/'
+Synth_path = 'File/'
+
+headers = {
+    'Referer': url,
+    'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0",
+    'cookie': "buvid3=94F0FDAB-59F7-39B1-F805-CAA3E07060F661671infoc; b_nut=1729338061; _uuid=96637C82-967A-B8CA-D643-7621093B83AF862008infoc; buvid4=6F50A1B3-D6A1-87A5-1EF3-7AA396E5E35C62385-024101911-WqlszYIbsE%2BQ%2FFD68EQkXA%3D%3D; enable_web_push=DISABLE; LIVE_BUVID=AUTO8117293380854336; header_theme_version=CLOSE; rpdid=|(Y|RJYumR|0J'u~kmJJmJ)u; buvid_fp_plain=undefined; hit-dyn-v2=1; is-2022-channel=1; fingerprint=19cfe92f609986680aa1f2f4ffaa5e5d; PVID=1; DedeUserID=35990046; DedeUserID__ckMd5=bf34a8eab39f0c11; buvid_fp=19cfe92f609986680aa1f2f4ffaa5e5d; blackside_state=1; CURRENT_BLACKGAP=1; CURRENT_QUALITY=80; enable_feed_channel=DISABLE; _tea_utm_cache_20001731={%22creative_id%22:209057374}; CURRENT_FNVAL=4048; b_lsid=F36DB5DB_194D3DCC6B3; bmg_af_switch=1; bmg_src_def_domain=i1.hdslb.com; bili_ticket=eyJhbGciOiJIUzI1NiIsImtpZCI6InMwMyIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3Mzg5ODA0NDksImlhdCI6MTczODcyMTE4OSwicGx0IjotMX0.lcIqSpCGaiPjRY0RAbCO8tOzHdF-VFiDMC-TWAiwIcE; bili_ticket_expires=1738980389; SESSDATA=de21e156%2C1754273250%2C4e042%2A21CjBcyUNyR_qeZY9ycuob2AZJmLM-9fFaPpMpNuKQmHWOenW-tp_d3fn8MLTp_YJhwzESVjFKbXVnLVdFS3d1djZyMU1zcE96UnNYWDVqazBrRk9sZUY4aVVETVY2THNpRVhOQVEzVEx2X2ZCTjdwdkpIazIzWThFTFk3SDV5NGpfLWxOWXQxTWVnIIEC; bili_jct=fdb20597a08eb5fe5869f1b5d45b85b6; sid=qk2ukeq5; bp_t_offset_35990046=1030289008506175488; home_feed_column=4; browser_resolution=1274-920"
+}
+
+# 主程序
+# 发送请求
+response = requests.get(url=url, headers=headers,timeout=(3,7))
+html = response.text
+
+# 提取,合法化字符并显示 视频标题
+title = re.findall('title="(.*?)"', html)[0]
+title = h.unescape(title)
+
+if title:
+    illegal_chars = fr'<||>\/:"*?'
+    def remove_illegal_chars(title_ill):
+        for char in illegal_chars:
+            title_ill = title_ill.replace(char, " ")
+        return title_ill
+    title = remove_illegal_chars(title)
+print("视频标题:",title)
+
+# 提取视频信息,提取音视频链接
+# # TODO:设置数值来声明文件品质,0默认最高
+info = re.findall('window.__playinfo__=(.*?)</script>', html)[0]
+json_data = json.loads(info)
+video_url = json_data['data']['dash']['video'][0]['baseUrl']
+audio_url = json_data['data']['dash']['audio'][0]['baseUrl']
+
+# 获取音视频内容并保存
+video_content = requests.get(url=video_url, headers=headers).content
+audio_content = requests.get(url=audio_url, headers=headers).content
+def SaveAudio():
+    with open(A_path + title + '.mp3', mode='wb') as a:
+        a.write(audio_content)
+def SaveVideo():
+    with open(V_path + title + '.mp4', mode='wb') as v:
+        v.write(video_content)
+
+def ClipVideo():
+    time_1 = 0
+    time_2 = None
+    audio_path = fr"{A_path}{title}{'.mp3'}"
+    video_path = fr"{V_path}{title}{'.mp4'}"
+    audio = AudioFileClip(audio_path)
+    audio_clip = audio.subclip(time_1, time_2)
+    video = VideoFileClip(video_path)
+    video_clip = video.subclip(time_1, time_2)
+    audio_clip = audio_clip.set_duration(video_clip.duration)
+    video_clip_with_audio = video_clip.set_audio(audio_clip)
+    video_clip_with_audio.write_videofile(fr"{Synth_path}{title}{'.mp4'}", codec="libx264", audio_codec="aac")
+
+def main():
+    SaveAudio()
+    # SaveVideo()
+    # ClipVideo()
+
+if __name__ == '__main__':
+    main()

+ 0 - 36
utils/Clip_bili.py

@@ -1,36 +0,0 @@
-# -*- coding: utf-8 -*-
-# @Author  : ChenZhaoyuchen
-# @Time    : 2024/9/20 8:59
-# @File    : Clip_bili.py
-
-from .GetVideoInfo import *
-from .Save_bili import *
-from moviepy.editor import *
-import requests
-
-def downloads():
-    # 程序参数
-    session = requests.session()
-    title = GetTitile()
-    v_url = GetVideoInfo()
-    a_url = GetAudioInfo()
-
-    # 主程序操作
-    # 1.下载
-    SaveAV(session,url,title,v_url,a_url)
-    # 2.合并
-    audio_path = fr"{Audio_path}{title}{Audio_format}"
-    audio_clip = AudioFileClip(audio_path)
-    video_path = fr"{Video_path}{title}{Video_format}"
-    video_clip = VideoFileClip(video_path)
-    audio_clip = audio_clip.set_duration(video_clip.duration)
-    video_clip_with_audio = video_clip.set_audio(audio_clip)
-    video_clip_with_audio.write_videofile(fr"{Synth_path}{title}{Video_format}", codec="libx264", audio_codec="aac")
-
-def downloadsAudio():
-    # 程序参数
-    session = requests.session()
-    title = GetTitile()
-    a_url = GetAudioInfo()
-    # 主程序操作
-    SaveAudio(session,url,title,a_url)

+ 0 - 26
utils/GetResponse.py

@@ -1,26 +0,0 @@
-# -*- coding: utf-8 -*-
-# @Author  : ChenZhaoyuchen
-# @Time    : 2024/9/13 15:03
-# @File    : GetResponse.py
-
-from .setting import *
-import requests
-
-# //视频音频请求头//
-headers = {
-        "Referer": url,
-        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
-        'cookie': 'buvid3=D82F9D33-E75C-8D6E-6D2D-D128A352B3EC99573infoc; b_nut=1730271799; _uuid=363DA659-CAA7-AEE3-31EF-105ADAD95EFA299807infoc; enable_web_push=DISABLE; buvid4=A8A4CC10-7B3C-8459-B07C-EB4E11E948D401840-024103007-fmI38SPP%2F5%2BxXWrCTYgty62zOzJos1uEW8lnI07A3XTkLJ6dLJvsmsAJBqLNPrF9; rpdid=0zbfvUnKtc|3XngooMd|T30|3w1T62JV; header_theme_version=CLOSE; DedeUserID=35990046; DedeUserID__ckMd5=bf34a8eab39f0c11; buvid_fp_plain=undefined; LIVE_BUVID=AUTO3317306871682983; CURRENT_QUALITY=80; fingerprint=afd86aa8ba10b52e21767b02b25b933b; buvid_fp=afd86aa8ba10b52e21767b02b25b933b; CURRENT_FNVAL=4048; bili_ticket=eyJhbGciOiJIUzI1NiIsImtpZCI6InMwMyIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MzIyNjg3OTMsImlhdCI6MTczMjAwOTUzMywicGx0IjotMX0.XrtK4fW5yyBnEWTn4gQeSTZAh_8KweejUzSk9tPDC08; bili_ticket_expires=1732268733; PVID=3; bmg_af_switch=1; bmg_src_def_domain=i2.hdslb.com; b_lsid=AEA3F28F_1934D6025DD; SESSDATA=994c56c3%2C1747721973%2C32480%2Ab1CjC6H2WiSR2TdOw7R4ED2MVj0RDd_OeOczPS9dMUYYuj8I9ilx01iewdYO_1V7J5VSoSVkVtaE1tV0hxRHIwb2tndmJraTd3X3pvcXBleHI4NDhRN3o5YnAtOWlVX1lwVXhTc210RS05VDFkUnVaMUQ3MjBiQ0h1dENpdi1VOU9hLUxycHUzR2RBIIEC; bili_jct=4cd051b6642a32eeb57f558eac9f02f7; sid=6w3kthlu; home_feed_column=5; browser_resolution=1528-712; bsource=search_bing; bp_t_offset_35990046=1002173800399241216'
-}
-
-video_json = {
-
-}
-
-def GetResponse_AV():
-    response_audio = requests.get(url = url,headers = headers_bili_av,stream = True)
-    return response_audio
-
-# 检查
-if __name__ == '__main__':
-    print(GetResponse_AV())

+ 0 - 70
utils/GetVideoInfo.py

@@ -1,70 +0,0 @@
-# -*- coding: utf-8 -*-
-# @Author  : ChenZhaoyuchen
-# @Time    : 2024/9/13 15:02
-# @File    : GetVideoInfo.py
-
-import json
-import re
-from utils.GetResponse import *
-from pprint import pprint
-
-video_json = {
-}
-
-def GetVideoInfo() -> str:
-    response_video = GetResponse_AV()
-    html_video = response_video.text
-    info_video = re.findall('<script>window.__playinfo__=(.*?)</script>', html_video)[0]
-    json_data_video = json.loads(info_video)
-    video_url = json_data_video['data']['dash']['video'][0]['baseUrl']
-    return video_url
-
-def GetAudioInfo() -> str:
-    response_audio = GetResponse_AV()
-    html_audio = response_audio.text
-    info_audio = re.findall('<script>window.__playinfo__=(.*?)</script>', html_audio)[0]
-    json_data_audio = json.loads(info_audio)
-    audio_url = json_data_audio['data']['dash']['audio'][0]['baseUrl']
-    return audio_url
-
-def GetTitile() -> str:
-    # response_audio = GetResponse_AV()
-    # html = response_audio.text
-    # title = re.findall('<title data-vue-meta="true">(.*?)</title>', html)[0]
-    # print("原件名称:",title)
-    # video_json[title] = title
-    html = GetResponse_AV().text
-    title = re.findall('title="(.*?)"', html)[0]
-
-    # if not title:
-    #     title = '未知'
-    if title:
-        illegal_chars = fr'<|>\/:"*?'
-        def remove_illegal_chars(title_ill):
-            for char in illegal_chars:
-                title_ill = title_ill.replace(char, "")
-            return title_ill
-        title = remove_illegal_chars(title)
-    else:
-        return None
-    # elif len(title) > 30:
-    #     title = title[:30]
-    print('合法名称:',title)
-    return title
-
-# 仅用作测试
-def GetHTML():
-    response = GetResponse_AV()
-    html = response.text
-    return html
-
-# # 测试代码
-if __name__ == '__main__':
-    A = GetAudioInfo()
-    print(A)
-    B = GetVideoInfo()
-    print(B)
-    C = GetTitile()
-    print('修饰过后名字为:',C)
-    D = GetHTML()
-    pprint(D)

+ 0 - 39
utils/Save_bili.py

@@ -1,39 +0,0 @@
-# -*- coding: utf-8 -*-
-# @Author  : ChenZhaoyuchen
-# @Time    : 2024/9/13 15:02
-# @File    : Save_bili.py
-
-from utils.GetResponse import *
-import requests
-
-def SaveAV(session: requests.session(),url,title,v_url,a_url):
-    # 设置请求头
-    headers['Referer'] = url
-    # 获取准许
-    session.options(v_url, headers=headers)
-    session.options(a_url, headers=headers)
-
-    A_content = session.get(a_url, headers=headers).content
-    V_content = session.get(v_url, headers=headers).content
-
-    with open(Audio_path + title + Audio_format, mode='wb') as audio:
-        audio.write(A_content)
-    with open(Video_path + title + Video_format, mode='wb') as video:
-        video.write(V_content)
-
-def SaveAudio(session,url,title,a_url):
-    # 设置请求头
-    headers['Referer'] = url
-
-    # 获取准许
-    session.options(a_url, headers=headers)
-    A_content = session.get(a_url, headers=headers).content
-
-    # 下载程序
-    print('开始下载音频...')
-    print('路径为:',Audio_path)
-    with open(Audio_path + title + Audio_format, mode='wb') as audio:
-        audio.write(A_content)
-    print('音频下载结束')
-
-

+ 0 - 4
utils/__init__.py

@@ -1,4 +0,0 @@
-# -*- coding: utf-8 -*-
-# @Author  : ChenZhaoyuchen
-# @Time    : 2024/9/13 14:15
-# @File    : __init__.py.py

二進制
utils/__pycache__/Clip_bili.cpython-39.pyc


二進制
utils/__pycache__/GetResponse.cpython-39.pyc


二進制
utils/__pycache__/GetVideoInfo.cpython-39.pyc


二進制
utils/__pycache__/Save_bili.cpython-39.pyc


二進制
utils/__pycache__/__init__.cpython-39.pyc


二進制
utils/__pycache__/setting.cpython-39.pyc


+ 0 - 14
utils/setting.py

@@ -1,14 +0,0 @@
-# -*- coding: utf-8 -*-
-# @Author  : ChenZhaoyuchen
-# @Time    : 2024/9/13 14:13
-# @File    : setting.py
-
-Audio_format = '.mp3'
-Video_format = '.mp4'
-
-Audio_path = 'D:/pyp/Spider/bilibili_pachong/bilibili_files/Audio/'
-Video_path = 'D:/pyp/Spider/bilibili_pachong/bilibili_files/Video/'
-Synth_path = 'D:/pyp/Spider/bilibili_pachong/bilibili_files/Files/'
-
-url = 'https://www.bilibili.com/video/BV1LxSuYDEBR/?spm_id_from=333.1007.tianma.1-1-1.click&vd_source=f6247aa12dae1ff1bce74ef0af381757'
-base_url = 'https://www.bilibili.com'