python对虎牙进行小姐姐视频采集,舞蹈区内容真热闹~

前言

嗨喽,大家好!这里是魔王呐~


环境使用:

  • Python 3.8 解释器<运行代码>

  • Pycharm 编辑器 <写代码>


模块使用]:

  • requests >>> 数据请求 第三方模块 pip install requests <工具>
  • re <正则表达式模块>

如果安装python第三方模块:

  1. win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests) 回车
  2. 在pycharm中点击Terminal(终端) 输入安装命令

如何配置pycharm里面的python解释器?

  1. 选择file(文件) >>> setting(设置) >>> Project(项目) >>> python interpreter(python解释器)
  2. 点击齿轮, 选择add
  3. 添加python安装路径

pycharm如何安装插件?

  1. 选择file(文件) >>> setting(设置) >>> Plugins(插件)
  2. 点击 Marketplace 输入想要安装的插件名字 比如:翻译插件 输入 translation / 汉化插件 输入 Chinese
  3. 选择相应的插件点击 install(安装) 即可
  4. 安装成功之后 是会弹出 重启pycharm的选项 点击确定, 重启即可生效

基本思路流程:

一. 分析数据来源

找寻网址上面视频数据来自于哪里

开发者工具进行抓包..

  1. 鼠标右键点击检查 或者 F12打开开发者工具
  2. 刷新网页
  3. 找寻视频数据...<通过media里找寻视频url地址>
  4. 找视频url地址来于那个数据包 >>> 通过视频url地址中一段参数进行搜索, 建议是搜.mp4前面这段内容...

二, 代码实现过程: 对于某些网站 可能需要多次请求,

  1. 发送请求, 对于找到视频数据包发送请求
  2. 获取数据, 获取服务器返回响应数据
  3. 解析数据, 提取我们想要数据内容 视频url地址 视频标题
    ....
  4. 保存数据, 保存视频数据到本地文件夹

多个视频采集 <视频数据包url地址变化规律>


代码

导入模块

# import requests
import requests  # 数据请求模块
import pprint  # 格式化输出模块
import re
for page in range(2, 6):
    print(f'正在采集第{page}页的数据内容')
    link = f'https://v.huya.com/g/all?set_id=51&order=hot&page={page}'
    headers = {
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36'
    }
    html_data = requests.get(url=link, headers=headers).text
    # print(html_data)
    # 使用re正则表达式提取数据 从什么地方去获取什么数据
    # <li data-vid="(\d+)"><a href=".*?"  加了括号是我们想要数据内容 \d+ 匹配多个数字 .*? 可以匹配任意字符(除了换行符\n)
    video_id_list = re.findall('<li data-vid="(\d+)"><a href=".*?"', html_data)
    print(video_id_list)
    for video_id in video_id_list:
        url = f'https://liveapi.huya.com/moment/getMomentContent?videoId={video_id}&uid=&_=1654949607282'
        # 伪装python代码  在开发者工具里复制 user-agent 用户代理 表示浏览器基本身份表示
        # headers请求头, 可以python代码伪装成浏览器对于url地址发送请求 <作用防止被识别出来是爬虫程序>
        # cookie 用户信息, 常用于检测是否登陆账号 <无论登陆与否 都有一个cookie>
        # headers = {
        #     'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36'
        # }
        # 通过requests模块里面get请求方法对于url地址发送请求, 并且携带上headers请求头伪装, 最后用自定义变量response接受返回数据
        response = requests.get(url=url, headers=headers)
        # print(response.json())  # <Response [200]> 200表示请求成功 response.json() 返回数据一定是完整json数据格式
        # pprint.pprint(response.json())
        # 解析数据 字典取值  根据键值对取值 {'键': '值', '键1': '值1'} 根据冒号左边的内容<键>, 提取冒号右边的内容<值>
        title = response.json()['data']['moment']['title']
        title = re.sub(r'[\/:*?"<>|\n\r\t]', '', title)
        video_url = response.json()['data']['moment']['videoInfo']['definitions'][0]['url']
        print(title)
        print(video_url)
        # 保存数据 需要对于视频播放地址, 发送请求获取数据内容
        video_content = requests.get(url=video_url, headers=headers).content
        with open('video\\' + title +video_id + '.mp4', mode='wb') as f:  # as 重命名为 f
            f.write(video_content)

        # f = open('video\\' + title + '.mp4', mode='wb')
        # f.write(video_content)
        # f.close()

尾语

成功没有快车道,幸福没有高速路。

所有的成功,都来自不倦地努力和奔跑,所有的幸福都来自平凡的奋斗和坚持

——励志语录

本文章就写完啦~感兴趣的小伙伴可以复制代码去试试

你们的支持是我最大的动力!!记得三连哦~ 💕 欢迎大家阅读往期的文章呀~

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,014评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,796评论 3 386
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,484评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,830评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,946评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,114评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,182评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,927评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,369评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,678评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,832评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,533评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,166评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,885评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,128评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,659评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,738评论 2 351

推荐阅读更多精彩内容