范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Python批量采集B站美女内容并把音频数据和画面内容合并保存

  前言
  嗨喽,大家好呀!这里是魔王呐~
  环境使用:Python 3.8  Pycharm  ffmpeg
  软件的使用 合成视频和音频 需要找wo 领取  模块使用:import requests >>> pip install requests  内置模块
  你安装好python环境就可以了  import re  import json  import subprocess  Python的应用学习方向有哪些?网站开发:
  如目前优秀的全栈的 django、框架flask ,都继承了python简单、明确的风格,开发效率高、易维护,与自动化运维结合性好。
  python已经成为自动化运维平台领域的事实标准;
  python开发的网站:
  豆瓣 , Youtube , Dropbox , 豆瓣...等等  爬虫程序
  在爬虫领域,Python几乎是霸主地位,将网络一切数据作为资源,通过自动化程序进行有针对性的数据采集以及处理。
  从事该领域应学习爬虫策略、高性能异步IO、分布式爬虫等,并针对Scrapy框架源码进行深入剖析,从而理解其原理并实现自定义爬虫框架。  数据分析
  Python语言相对于其它解释性语言最大的特点是其庞大而活跃的科学计算生态,
  在数据分析、交互、可视化方面有相当完善和优秀的库.  自动化脚本
  执行许多重复的任务,例如阅读 pdf、播放音乐、查看天气、打开书签、清理文件夹等等,
  使用自动化脚本就无需手动一次又一次地完成这些任务,非常方便。  人工智能
  各种人工智能算法都基于Python编写,尤其PyTorch之后,Python作为AI时代头牌语言的位置基本确定。
  游戏开发/辅助 自动化测试 运维  基本四大步骤:发送请求  获取数据  解析数据  保存数据
  完整代码import requests  # 数据请求模块 import re  # 正则表达式模块 import json  # 序列化与反序列化 import pprint  # 格式化输出模块 import subprocess import os  # 文件操作模块   def get_response(html_url):     """     发送请求函数         模拟浏览器对于url地址发送请求, 获取服务器返回响应数据         请求头headers是用来伪装             user-agent: 用户代理 表示浏览器基本身份标识     :param html_url: 要请求网址是什么     :return: response 服务器返回响应数据     """     headers = {         "referer": "https://www.bilibili.com/",         "user-agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36"     }     response = requests.get(url=html_url, headers=headers)  #  响应对象     # 200 状态码 表示请求成功     # print(response)     return response   def get_video_info(html_url):     """     获取视频信息函数     def 关键字 用自定义函数 get_video_info函数名 html_url 形式参数 <不具备实际意义>     :param html_url: 传入视频播放页面url地址     :return: 视频信息      正则表达式提取数据:         re.findall() 需要给这个括号里面传两个基本参数             从什么地方去找什么样数据         re.findall("

", response.text) 从response.text里面去找

这段数据 这段数据中 (.*?) 这段就是我们想要数据 .*?表示匹配任意字符(除了换行符 以外) 正则表达式 全部掌握, 系统学习2.5个小时 列表 list 正则匹配出来的数据返回列表 <作为文件名数据保存, 都是要字符串数据> [0] 取列表里第一个元素 """ response = get_response(html_url=html_url) # print(response.text) # 网页源代码 js逆向需要你掌握JavaScript基础语法 title = re.findall("

", response.text)[0].replace(" ", "") html_data = re.findall("", response.text)[0] # print(title) # print(html_data) # print(type(html_data)) # type内置函数, 可以查看数据类型 json_data = json.loads(html_data) # print(json_data) # print(type(json_data)) # pprint.pprint(json_data) # 字典取值好处: 键值对取值 根据冒号左边内容<键>, 提取冒号右边内容<值> """ 源码、解答、教程、资料加Q群:832157862 dit = { "键1": "值1", "键2": "值2", } dit["键2"] >>> "值2" jsonpath """ audio_url = json_data["data"]["dash"]["audio"][0]["baseUrl"] video_url = json_data["data"]["dash"]["video"][0]["baseUrl"] # print(title) # print(audio_url) # print(video_url) video_info = [title, audio_url, video_url] return video_info def save(title, audio_url, video_url): """ 保存数据函数 :param title: 视频标题 :param audio_url: 音频url :param video_url: 视频url :return: """ # 调用前面定义好的数据请求函数 audio_content = get_response(html_url=audio_url).content # 获取视频和音频二进制数据内容 video_content = get_response(html_url=video_url).content # wb二进制写入数据 with open("video" + title + ".mp3", mode="wb") as f: # 保存数据, 保存数据前提是得获取数据 f.write(audio_content) with open("video" + title + ".mp4", mode="wb") as f: # 保存数据, 保存数据前提是得获取数据 f.write(video_content) print(title, "保存成功") #  合并视频 需要 ffmpeg软件 找木子获取 cmd = f"D:demoffmpegbinffmpeg.exe -i video{title}.mp4 -i video{title}.mp3 -c:v copy -c:a aac -strict experimental video{title}output.mp4" subprocess.run(cmd, shell=True) os.remove(f"video{title}.mp4") os.remove(f"video{title}.mp3") def main(bv_id): """ 主函数 整合前面所有定义好的函数 :param bv_id: 视频bv号 视频ID :return: """ link = f"https://www.bilibili.com/video/{bv_id}" video_info = get_video_info(html_url=link) # 调用获取视频信息函数 返回数据是什么? save(video_info[0], video_info[1], video_info[2]) # 保存函数 if __name__ == "__main__": # 函数入口 当文件运行时的时候下面的代码块会被执行 # 当文件被当作模块被调用的时候, 下面的代码不会执行 # print("hello") # bv = input("请输入你想要下载视频BV号: ") for page in range(1, 7): index_url = f"https://api.bilibili.com/x/space/arc/search?mid=487939159&ps=30&tid=0&pn={page}&keyword=&order=pubdate&jsonp=jsonp" json_data = get_response(html_url=index_url).json() # pprint.pprint(json_data) bv_id_list = [i["bvid"] for i in json_data["data"]["list"]["vlist"]] title_list = [i["title"] for i in json_data["data"]["list"]["vlist"]] print(bv_id_list) print(title_list) # for bv_id in bv_id_list: # main(bv_id=bv_id)   尾语   成功没有快车道,幸福没有高速路。   所有的成功,都来自不倦地努力和奔跑,所有的幸福都来自平凡的奋斗和坚持   愿所有美好如期而至,以后的生活不将就,也不辜负。   ——励志语录   本文章就写完啦~感兴趣的小伙伴可以复制代码去试试   你们的支持是我最大的动力!!感谢陪伴~   记得三连哦~ 欢迎大家阅读往期的文章呀


性价比最高的旗舰机骁龙8双主摄5000mAh仅3000出头,别不识货在各个手机品牌都在冲击高端的大背景下,旗舰手机涨价已经成为了必然,像华米OV荣耀五家的旗舰手机售价都不约而同的来到了5000元档,体验确实都很不错,但是高昂的售价让人望而却步。对比五款值得入手的大底拍照手机哪一款更具有性价比?随着手机拍照性能不断提升,大家用手机拍照也已经成为一种习惯,这也让单反和微单厂家最近这几年销量不断下滑。没有办法,微单生产厂家只好通过不断提高产品价格来获得更高的利润,所以这两年微助听器可以找人代购吗?您好。助听器可以找人代购吗?不可以的。助听器是国家二类资料器械,需要经过专业的验配中心进行听力全面检测之后进行验配。找人代购的助听器,功率以及调试都不精确,患者的听力情况不一定适合TCL电视好用吗?TCL电视最大的害处就是寿命太长。我前几年网购了一台该品牌的曲屏55英寸的电视,现在新居38平方米的客厅,它放在客厅很落魄,显得太小。我希望它坏掉,早一天换成85以上英寸,于是故意戴助听器会被他人认为不正常吗?戴助听器和戴近视眼镜一样,都是借用外部器械来帮助我们听得和看得更清楚,都是正常的。只不过助听器还没有像眼镜那么普及,很多人对这方面还不了解,心里还有抵触和排斥,实际上耳朵有听力损失微信公众平台将显示用户IP属地,你准备好了吗据了解,微信公众平台将显示用户的IP属地啦。国内用户将显示到省份地区,国外用户显示到国家,并且该功能为强制开启,用户无法主动关闭。微信是最常使用的社交软件,大家日常的社交和工作都离浅谈巴菲特抨击比特币,比特币是否真正有价值?大奇讲故事存在就是合理。随着乌俄战争愈演愈烈,比特币区块链支付系统,又重新进入全球视野。其中俄国迅速把比特币作为国际结算支付工具,将彻底避开了以米国为首的西方国家所对俄罗斯全方位金荣耀20为什么卖那么贵?荣耀20是华为公司手机子品牌荣耀在2019年5月发布的新品手机,荣耀成立以来一直是走线上性价比的路线,其推出的产品也获得了很多用户的喜爱。荣耀20系列有两个版本,荣耀20和荣耀20华为Mate50Pro即将上线,一体沉浸式屏幕加持,5G实现新渠道如今的华为的确很无奈,在4纳米新机爆发的时代,华为只能按兵不动,大力维持现有的手机市场。毕竟芯片是智能手机的核心配件,目前国产厂商还无法自主生产4纳米芯片及5G相关元器件,只能依靠观点李彦宏无人驾驶肯定会出事,甚至死亡,概率比有人驾驶低文懂车帝原创常思玥懂车帝原创行业近日,一张百度创始人董事长兼CEO李彦宏的朋友圈截图被曝光,李彦宏表示无人驾驶肯定会出事,甚至会出死亡事故,只是这个概率比有人驾驶低多了。百度创始人摩托罗拉edgeX30三主摄旗舰手机骁龙8Gen1处理器,直降600元消费者普遍认为,手机中堆叠的配置越多,解锁的新技能就越多。这没有毛病,但是某些善用商机的商家会抓住消费者这一心理特征,在手机上大做文章。摄像头属于手机中的一项重要的配置,很多人都会
哥伦比亚波哥大银行开始进行加密试点哥伦比亚主要的商业银行BancodeBogot已经开始了加密试点,将允许一部分客户在其银行平台上进行加密交易。试点将于本月开始,将允许客户在其移动和虚拟(基于互联网桌面)银行平台上DeFi项目启动后一天ampampquot亏损ampampquot3100万美元一款DeFi应用推出后一天就损失了3100万美元,其社区内有人称,整个事件是一场薅羊毛的骗局。就在Binance智能链上线一天后,去中心化理财项目MeerkatFinance今日发Binance高管NFT是ampampquot通往加密技术的门户ampampquotBinance的一位高管提出,NFT是进入加密技术的新通道。这一评论是在著名数字艺术家Beeple以6930万美元的价格出售NFT收藏品后的一天。据Binance的一位高管称,NF这个父亲节,小米让我知道了如何和父亲合拍儿不知道在这样一个感谢父亲的节日里,大家都有没有为父亲送上一个真挚的祝福呢?在这样一个必要的节日里,大家一定不要吝啬自己对家人的感情流露,适时地送上一份温暖。如果还没有的话,不妨现在小米手机排名晋升世界第二,雷总革命尚未成功今日,小米高层雷军在微博上发出一张图片,并配文革命尚未成功,同志仍需努力。雷总发的图片是什么呢?哦,原来是小米超过苹果成为全球第二。看到这张图片,相信大家一定会因为雷总的风趣幽默而Bose大鲨甘拜下风,捷波朗85t深度体验目前最强降噪耳机大家都知道,降噪和音质一般是不可兼得的,这个问题就连降噪先驱Bose都无法解决。但北欧有一个百年大品牌,在新一代的旗舰耳机上攻克了这个难题,这个品牌就是捷波朗(Jabra)。不过,XRP价格在疯狂周末冲刺中上涨30至1。30美元Ripple支付平台的原生资产XRP在过去的24小时内上涨了30,从1美元涨到了1。30美元。尽管自12月以来,XRP背后的金融科技公司Ripple面临着来自美国证券交易委员会(STheWeeknd刚在Twitter上放出了一个NFT预告TheWeeknd在Twitter上预告了一首生活在NFT空间的新歌。这到底是什么意思呢?我们都在等着一探究竟。刚刚结束超级碗表演最受欢迎专辑和气球之屋再版,TheWeeknd正在尼日利亚央行官员加密交易并未被禁止一位尼日利亚央行官员重申,没有禁止个人进行加密交易,银行仍然被禁止与加密公司合作。据当地媒体TodayNG报道,尼日利亚中央银行(CBN)的一名高级官员拒绝了该银行曾经禁止加密的说摩根士丹利一直计划向客户提供比特币风险根据周四上午提交给美国证券交易委员会的文件,摩根士丹利将允许某些共同基金通过现金结算的比特币期货和灰度比特币信托间接投资比特币。银行机构基金旗下的12只基金将被允许接触这些比特币相XendFinance将DeFi服务引入非洲市场XendFinance今天推出了一个平台,使整个非洲的信用社和合作社能够为其成员提供DeFi服务。XendFinance首席执行官UgochukwuAronu告诉解密,Xend将其