發某音鏈接微信自動回覆無水印視頻下載鏈接

 python有趣小項目

需要的庫:

  1. itchat
  2. requests
  3. re

項目步驟:

  1. 獲取某音的鏈接
  2. 用reqests.get()函數獲取鏈接的網頁內容並返回
  3. 用re正則表達式提取網頁當中的視頻鏈接
  4. 發現某音視頻鏈接當中/playwm/爲有水印視頻,而/play/爲無水印視頻
  5. 去掉鏈接當中的‘wm’,並返回去掉後的網址
  6. itchat接收網址併發送鏈接給微信好友
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2019/8/31 16:03
# @Author  : Cxk


import itchat
from itchat.content import *
import requests
import re

headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36'}
def win_html_data(html_url):
    """
    爬取整個網頁內容
    :param html_url:
    :return:
    """
    response = requests.get(html_url, headers=headers)
    response.encoding = 'utf-8'
#     獲取網頁內容並返回整個網頁
    html_content = response.text
    return html_content

def get_vido_url(html_datas):
#     提取視頻連接
    video_player_url = re.findall('playAddr: "(.*?)"',html_datas)[0]
#     將playwm中的wm除去變成無水印視頻連接 水印:watermark
    video_url = video_player_url.replace('wm','')
#     返回處理後的無水印視頻下載連接
    
    return video_url
 
def get_url(chuli_url):
#     接收抖音複製下來的連接並處理掉無用的字,提取出視頻連接
    pattern = re.compile(r'http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+')

    url = re.findall(pattern,chuli_url)
    
    html_url=''
#     將提取出的視頻連接轉爲字符串
    for i in url:  
        html_url = i
# 訪問連接並獲取到網頁內容
    html_datas =win_html_data(html_url)
#     從網頁內容中提取視頻無水印連接並返回
    video_url=get_vido_url(html_datas)
    
    return video_url
    
    
@itchat.msg_register('Text')
def text_reply(msg):
    """類似qq上的自動回覆"""
    if not msg['FromUserName']==myUserName:
        return get_url(msg['Text'])
if __name__=='__main__':
    itchat.auto_login(hotReload=True)
    myUserName=itchat.get_friends(update=True)[0]["UserName"]
    itchat.run()
    

 

成果截圖:

發佈了19 篇原創文章 · 獲贊 11 · 訪問量 3521
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章