日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

python 基于wx實(shí)現(xiàn)音樂播放

瀏覽:218日期:2022-07-04 13:52:28

# -*- coding: utf-8 -*-'''Created on Sat Apr 25 18:15:36 2020@author: Administrator'''import requestsimport binasciiimport jsonimport datetimeimport tracebackfrom Crypto.Cipher import AESfrom tkinter import *FAKE_HEADERS = { ’Accept’: ’text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8’, # noqa ’Accept-Charset’: ’UTF-8,*;q=0.5’, ’Accept-Encoding’: ’gzip,deflate,sdch’, ’Accept-Language’: ’en-US,en;q=0.8’, ’User-Agent’: ’Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Firefox/60.0’, # noqa ’referer’: ’https://www.google.com’}def netease_search(keyword) -> list: ’’’ 從網(wǎng)易云音樂搜索 ’’’ count = 30 eparams = { ’method’: ’POST’, ’url’: ’http://music.163.com/api/cloudsearch/pc’, ’params’: { ’s’: keyword, ’type’: 1, ’offset’: 0, ’limit’: count } } data = {’eparams’: encode_netease_data(eparams)} s = requests.Session() s.headers.update(FAKE_HEADERS) s.headers.update({ ’referer’: ’http://music.163.com/’, }) r = s.post(’http://music.163.com/api/linux/forward’, data=data) j = r.json() music_list = [] ID=0 try: for m in j[’result’][’songs’]: if m[’privilege’][’fl’] == 0:# 沒有版權(quán)continue # 獲得歌手名字 singers = [] for singer in m[’ar’]:singers.append(singer[’name’]) # 獲得最優(yōu)音質(zhì)的文件大小 if m[’privilege’][’fl’] >= 320000 and ’h’ in m.keys() and m[’h’]:# 有時(shí)候即使>=320000,h屬性依然為Nonesize = m[’h’][’size’] elif m[’privilege’][’fl’] >= 192000 and ’m’ in m.keys() and m[’m’]:size = m[’m’][’size’] else:size = m[’l’][’size’] music = {’title’: m[’name’],’id’: m[’id’],’duration’: str(datetime.timedelta(seconds=int(m[’dt’]/1000))),’singer’: ’、’.join(singers),’album’: m[’al’][’name’],’size’: round(size / 1048576, 2),’source’: ’netease’ } music=[] print(m[’name’]) music.append(ID) music.append(m[’name’]) music.append(’、’.join(singers)) rel='external nofollow' +str(m[’id’])+'.mp3' print(href) music.append(href) music.append(m[’id’]) music_list.append(music) ID=ID+1except Exception: # 如果是詳細(xì)模式則輸出詳細(xì)錯(cuò)誤信息# err = traceback.format_exc() if glovar.get_option(’verbose’) else str(e)# raise DataError(err)pass return music_listdef encode_netease_data(data) -> str: data = json.dumps(data) key = binascii.unhexlify(’7246674226682325323F5E6544673A51’) encryptor = AES.new(key, AES.MODE_ECB) # 補(bǔ)足data長(zhǎng)度,使其是16的倍數(shù) pad = 16 - len(data) % 16 fix = chr(pad) * pad byte_data = (data + fix).encode(’utf-8’) return binascii.hexlify(encryptor.encrypt(byte_data)).upper().decode()def QQ_search(keyword): import urllib.parse as parse from urllib.request import urlretrieve import requests import json import os import time import sys w=parse.urlencode({’w’:keyword}) url=’https://c.y.qq.com/soso/fcgi-bin/client_search_cp?ct=24&qqmusic_ver=1298&new_json=1&remoteplace=txt.yqq.song&searchid=63229658163010696&t=0&aggr=1&cr=1&catZhida=1&lossless=0&flag_qc=0&p=1&n=30&%s&g_tk=5381&loginUin=0&hostUin=0&format=json&inCharset=utf8&outCharset=utf-8&notice=0&platform=yqq.json&needNewCode=0’%(w) content=requests.get(url=url) str_1=content.text dict_1=json.loads(str_1) song_list=dict_1[’data’][’song’][’list’] str_3=’’’https://u.y.qq.com/cgi-bin/musicu.fcg?-=getplaysongvkey5559460738919986&g_tk=5381&loginUin=0&hostUin=0&format=json&inCharset=utf8&outCharset=utf-8&notice=0&platform=yqq.json&needNewCode=0&data={'req':{'module':'CDN.SrfCdnDispatchServer','method':'GetCdnDispatch','param':{'guid':'1825194589','calltype':0,'userip':''}},'req_0':{'module':'vkey.GetVkeyServer','method':'CgiGetVkey','param':{'guid':'1825194589','songmid':['%s'],'songtype':[0],'uin':'0','loginflag':1,'platform':'20'}},'comm':{'uin':0,'format':'json','ct':24,'cv':0}}’’’ ID=0 music_list=[] url_list=[] for i in range(len(song_list)): # music_name.append(song_list[i][’name’]+’-’+song_list[i][’singer’][0][’name’]) # print(’{}.{}-{}’.format(i+1,song_list[i][’name’],song_list[i][’singer’][0][’name’])) url_list.append(str_3 % (song_list[i][’mid’])) # # print(url_list[id-1]) music=[]# print(m[’songname’]) music.append(ID) music.append(song_list[i][’name’]) music.append(song_list[i][’singer’][0][’name’]) content_json=requests.get(url=url_list[ID]) dict_2=json.loads(content_json.text) url_ip=dict_2[’req’][’data’][’freeflowsip’][1] purl=dict_2[’req_0’][’data’][’midurlinfo’][0][’purl’] href=url_ip+purl music.append(href) music.append(song_list[i][’mid’]) music_list.append(music) ID=ID+1 return music_listimport wx import time def music_play(arr): print('雙擊函數(shù)已啟動(dòng)')# 必須加上全局變量,否則不唱歌 global mp3 import mp3play path='http://m10.music.126.net/20200414222927/e509cfbb086d358e701e6bb5cfedfeaa/ymusic/0759/030f/540b/039ace5c004ebd382de4ca163145cf9b.mp3' path=arr[3] print('path:-->'+path) mp3 = mp3play.load(path) mp3.play()def music_pyplay(arr): import os import time import pygame source_file_path=arr[3] pygame.mixer.init() pygame.mixer.music.load(source_file_path) pygame.mixer.music.set_volume(0.5) pygame.mixer.music.play(-1) class MyFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self, None, -1, ’Button Example’, size=(1300, 700),pos=(-10,0)) panel = wx.Panel(self, -1) panel.SetSize(1300,700) panel.SetBackgroundColour('#D2B48C') self.sousuotxt = wx.TextCtrl(panel,pos=(0,0),size = (100,30)) lblList = [’網(wǎng)易’, ’QQ’, ’酷狗’] self.rbox = wx.RadioBox(panel, label = ’’, pos = (100,-15),size = (100,30), choices = lblList,majorDimension = 1, style = wx.RA_SPECIFY_ROWS) self.rbox.Bind(wx.EVT_RADIOBOX,self.onRadioBox) self.button = wx.Button(panel, -1, '搜索', pos=(350, 0)) self.Bind(wx.EVT_BUTTON, self.OnClick, self.button) self.mylove = wx.Button(panel, -1, '同步我喜歡的音樂', pos=(500, 0)) self.Bind(wx.EVT_BUTTON, self.Dmylove, self.mylove) languages = [] for i in range(1000): languages.append(str(i))self.choice = wx.Choice(panel,choices = languages,pos=(0,30)) self.choice.SetStringSelection('0') self.button5 = wx.Button(panel, -1, '本地文件', pos=(50, 30)) self.Bind(wx.EVT_BUTTON, self.OnButton, self.button5) self.button1 = wx.Button(panel, -1, '播放', pos=(150, 30)) self.Bind(wx.EVT_BUTTON, self.OnClick1, self.button1) self.button2 = wx.Button(panel, -1, '暫停', pos=(250, 30)) self.Bind(wx.EVT_BUTTON, self.OnClick2, self.button2) self.button3 = wx.Button(panel, -1, '下載', pos=(350, 30)) self.Bind(wx.EVT_BUTTON, self.OnClick3, self.button3) font = wx.Font(15, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL) self.music_ID = wx.StaticText(panel, label = 'ID', pos = (0,100),size=(30,500),style=wx.ALIGN_CENTER) self.music_ID.SetBackgroundColour('#D2B48C') self.music_ID.SetFont(font) self.music_name = wx.StaticText(panel, label = '歌名', pos = (30,100),size=(400,500),style=wx.ALIGN_CENTER) self.music_name.SetBackgroundColour('#D2B48C') self.music_name.SetFont(font) languages = [] for i in range(1,100): languages.append('第'+str(i)+'頁')self.pagenum = wx.Choice(panel,choices = languages,pos=(50,600)) self.pagenum.SetStringSelection('第1頁') self.button4 = wx.Button(panel, -1, '跳轉(zhuǎn)', pos=(150, 600)) self.Bind(wx.EVT_BUTTON, self.OnClick4, self.button4) self.prepage = wx.Button(panel, -1, '上一頁', pos=(250, 600)) self.Bind(wx.EVT_BUTTON, self.PrePage, self.prepage) self.nextpage = wx.Button(panel, -1, '下一頁', pos=(350, 600)) self.Bind(wx.EVT_BUTTON, self.NextPage, self.nextpage) self.path='D://downmusic/歌曲' self.music_arr=[]self.getfile() self.setData() self.key1='本地音樂' def onRadioBox(self,event): # print (self.rbox.GetStringSelection(),’ is clicked from Radio Box’ )pass def OnClick(self, event): self.rbox.GetStringSelection() print(self.rbox.GetStringSelection()) rboxtext=self.rbox.GetStringSelection() if rboxtext=='網(wǎng)易': s=self.sousuotxt.GetValue() self.music_arr=netease_search(s) print(self.music_arr) self.setData() print('搜索') self.key1='在線音樂' elif rboxtext=='QQ': s=self.sousuotxt.GetValue() self.music_arr=QQ_search(s) print(self.music_arr) self.setData() print('搜索') self.key1='在線音樂' else: pass #播放 def OnClick1(self, event): # self.button1.SetLabel('Clicked') print('播放')y=self.choice.GetStringSelection() for i in self.music_arr: if y==str(i[0]):if self.key1=='在線音樂': music_play(i) else: self.music_pyplay(i) def music_pyplay(self,arr): import os import time import pygamesource_file_path=arr[3] pygame.mixer.init() pygame.mixer.music.load(source_file_path) pygame.mixer.music.set_volume(0.5) pygame.mixer.music.play(-1)import os path='D://downmusic/歌詞/'import pygame import time import os f_url='' if arr[2]=='sen': f_url=path+str(arr[1])+'.lrc' else: f_url=path+str(arr[1])+'-'+str(arr[2])+'.lrc' f=open(f_url) s='' for i in f.readlines(): if i[1]!='0':pass else:s=s+i print(s) f.close() strLrc=sf.close() dictLrc = {} # 對(duì)歌詞進(jìn)行按行切割 lineListLrc = strLrc.splitlines() # 遍歷每一行歌詞 geci='' for lineLrc in lineListLrc: # 時(shí)間和歌詞分開 listLrc = lineLrc.split(']') timeLrc = listLrc[0][1:].split(’:’) # 轉(zhuǎn)換時(shí)間格式 times = float(timeLrc[0]) * 60 + float(timeLrc[1]) # 把時(shí)間當(dāng)做key,歌詞當(dāng)做value存放在字典中 dictLrc[times] = listLrc[1] geci=geci+listLrc[1]+'n' tempTime = 0 # 音頻初始化 root = Tk() # 初始化Tk() root.overrideredirect(True)#隱藏標(biāo)題欄 root.title('label-test') # 設(shè)置窗口標(biāo)題 root.geometry('1300x800+0+0') # 設(shè)置窗口大小 注意:是x 不是* root.resizable(width=True, height=True) # 設(shè)置窗口是否可以變化長(zhǎng)/寬,F(xiàn)alse不可變,True可變,默認(rèn)為True l = Label(root, text='label', bg='pink', font=('Arial',60), width=300, height=800) l['text']='wusen'# 加載音頻文件路徑 (路徑必須真實(shí)存在,音頻文件格式支持mp3/ogg等格式) for key in dictLrc.keys(): tempTime = key - tempTime # 判斷是否在播放音樂 if not pygame.mixer.music.get_busy():pygame.mixer.music.play() # 歌詞顯示的時(shí)間 time.sleep(tempTime) # 顯示歌詞 print(dictLrc[key]) tempTime = key import time # time.sleep(1) # music_IRC.SetLabel(time.strftime('%H:%M:%S',time.localtime(time.time())))print(time.strftime('%H:%M:%S',time.localtime(time.time())))# l['text']=time.strftime('%H:%M:%S',time.localtime(time.time())) l['text']=dictLrc[key] l.pack(side=TOP) l.update() root.destroy()# print(s) # 暫停 def OnClick2(self, event): # self.button2.SetLabel('Clicked') print('暫停')# 下載 def OnClick3(self, event): y=self.choice.GetStringSelection()# self.button3.SetLabel('Clicked') print('下載') print(y)for i in self.music_arr: if y==str(i[0]):self.down_music(i)# 跳轉(zhuǎn) def down_music(self,arr): self.rbox.GetStringSelection() print(self.rbox.GetStringSelection()) rboxtext=self.rbox.GetStringSelection() if rboxtext=='網(wǎng)易': headers={’User-Agent’:’Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36’}import requests url=arr[3] name=str(arr[1])+'-'+str(arr[2]) res=requests.get(url,headers=headers) print(res) m=res.content mv=open('D://downmusic/歌曲/'+name+'.mp3','wb') mv.write(m) mv.close() # 下載歌詞 import requests import json import os url = ’http://music.163.com/api/song/lyric?’+ ’id=’ + str(arr[4])+ ’&lv=1&kv=1&tv=-1’ r = requests.get(url,headers=headers) json_obj = r.text print(r.text) print(url) j = json.loads(json_obj) print(j[’lrc’][’lyric’]) f=open('D://downmusic/歌詞/'+name+'.lrc','w') f.write(j[’lrc’][’lyric’]) f.close() elif rboxtext=='QQ': headers={’User-Agent’:’Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36’}import requests url=arr[3] name=str(arr[1])+'-'+str(arr[2]) res=requests.get(url,headers=headers) print(res) m=res.content QQmusicpath='D://downmusic/歌曲/'+name+'.mp3' mv=open(QQmusicpath,'wb') mv.write(m) mv.close() import os s='e://python/ffmpeg-20200403-52523b6-win64-static/bin/ffmpeg -i D://downmusic/歌曲/a.mp3 '+QQmusicpath os.system(s) os.remove('D://downmusic/歌曲/a.mp3') # 下載歌詞 pass else: pass def OnClick4(self, event): self.setData() #刷新頁面賦值內(nèi)容 def setData(self): y=self.pagenum.GetStringSelection()# self.button4.SetLabel('Clicked') print('跳轉(zhuǎn)') print(y) ID='' name='' singer=''for i in self.music_arr[(int(y[1:-1])-1)*10:(int(y[1:-1])-1)*10+10]: ID=ID+str(i[0])+'n'+'----n' name=name+str(i[1])+'-'+str(i[2])+'n'+'------------------------------------------------------------------------------------------n'# singer=singer+str(i[2])+'n'+'----------n' self.music_ID.SetLabel(ID) self.music_name.SetLabel(name)# self.music_singer.SetLabel(singer) def getfile(self): self.music_arr.clear() import oslocal_url=self.path+'/' if os.path.isdir(local_url): pass else: os.mkdir(local_url) print('路徑已創(chuàng)建') file = os.listdir(self.path)j=0 for i in file: k=[] music_name=i[:-4].split('-', 1)[0] try:music_singer=i[:-4].split('-', 1)[1] except:music_singer='sen' music_ID='0' music_edition='本地歌曲' music_url=self.path+'/'+i k.append(j) k.append(music_name) k.append(music_singer) k.append(music_url) k.append(music_edition) print(j) print(music_name) print(music_singer) print(music_url) print(music_edition) print('----------') self.music_arr.append(k) j=j+1 self.key1='本地音樂'# 選擇本地文件 def OnButton(self, event): '''''' dlg = wx.DirDialog(self,u'選擇文件夾',style=wx.DD_DEFAULT_STYLE) if dlg.ShowModal() == wx.ID_OK: print(dlg.GetPath()) #文件夾路徑 self.path=dlg.GetPath() dlg.Destroy()self.getfile() self.setData()# 下一頁 def NextPage(self,event): y=self.pagenum.GetStringSelection() self.pagenum.SetStringSelection('第'+str(int(y[1:-1])+1)+'頁') self.setData()# 上一頁 def PrePage(self,event): y=self.pagenum.GetStringSelection() self.pagenum.SetStringSelection('第'+str(int(y[1:-1])-1)+'頁') self.setData() def Dmylove(self,event):# 同步網(wǎng)易云音樂import requests from bs4 import BeautifulSoup import urllib.request from lxml import html etree = html.etree #這里是設(shè)置請(qǐng)求頭 headers = { ’Referer’: ’http://music.163.com/’, ’Host’: ’music.163.com’, ’User-Agent’: ’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.75 Safari/537.36’, ’Accept’: ’text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8’, } # 歌單的url地址這里改id play_url = ’http://music.163.com/playlist?id=587771511’ s = requests.session() response = s.get(play_url, headers=headers).content # 使用bs4匹配出對(duì)應(yīng)的歌曲名稱和地址 s = BeautifulSoup(response, ’lxml’) main = s.find(’ul’, {’class’: ’f-hide’}) #print(main.find_all(’a’)) lists = [] for music in main.find_all(’a’): list = [] # print(’{} : {}’.format(music.text, music[’href’])) musicUrl = ’http://music.163.com/song/media/outer/url’ + music[’href’][5:] + ’.mp3’ musicName = music.text # 單首歌曲的名字和地址放在list列表中 list.append(musicName) list.append(musicUrl) list.append(music[’href’][9:]) # 全部歌曲信息放在lists列表中 lists.append(list) # 下載列表中的全部歌曲,并以歌曲名命名下載后的文件,文件位置為當(dāng)前文件夾 for i in lists: url = i[1] name = i[0] try:import osif os.path.exists('d:/downmusic/歌曲/'+name+'.mp3'): passelse: print(’正在下載’, name) #這里修改路徑,隨便指定盤符,但是得存在 urllib.request.urlretrieve(url, ’d:/downmusic/歌曲/%s.mp3’ % name) import requests import json url = ’http://music.163.com/api/song/lyric?’+ ’id=’ + str(i[2])+ ’&lv=1&kv=1&tv=-1’ r = requests.get(url,headers=headers) json_obj = r.text print(r.text) print(url) j = json.loads(json_obj) print(j[’lrc’][’lyric’]) f=open('d://downmusic/歌詞/'+name+'.lrc','w') f.write(j[’lrc’][’lyric’]) f.close() print(’下載成功’) except:print(’下載失敗’)if __name__ == ’__main__’: app = wx.PySimpleApp() frame = MyFrame() frame.Show() app.MainLoop() ##pyinstaller -D -w WX音樂播放器.py -p D:/anaconda/Lib/site-packages# pyinstaller -D WX音樂播放器.py -p D:/anaconda/Lib/site-packages# #pyinstaller -D WX音樂播放器.py

以上就是python 基于wx實(shí)現(xiàn)音樂播放的詳細(xì)內(nèi)容,更多關(guān)于python 音樂播放的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品亚洲二区| 国产精品15p| 国产欧美自拍| 国产精品第十页| 国产一卡不卡| 国产毛片精品| 欧美国产中文高清| 日韩av不卡在线观看| 国产亚洲字幕| 国产精品亚洲人成在99www | 中文字幕在线看片| 久久青草久久| 亚洲精品极品| 国产va免费精品观看精品视频| 亚洲www啪成人一区二区| 日韩在线短视频| 亚洲免费影视| 久久久国产精品网站| 欧美精品黄色| 精品高清久久| 中文字幕一区二区三区四区久久 | 国产精品亚洲综合色区韩国| 五月天av在线| 婷婷综合福利| 色婷婷狠狠五月综合天色拍| 亚洲香蕉久久| 国产精品成人自拍| 免费污视频在线一区| 亚洲精品无播放器在线播放| 91午夜精品| 免费视频亚洲| 欧美一区二区三区免费看| 欧美国产美女| 日韩欧美美女在线观看| 久久久久国产| 国产精品精品| 国产免费久久| 国产午夜精品一区二区三区欧美| 国产精品一区亚洲| 亚洲日本网址| 久久精品99国产国产精| 日本一二区不卡| 欧美日韩国产综合网| 久久亚洲人体| 午夜亚洲福利| 久久福利毛片| 亚洲精品小说| 亚洲午夜av| 性欧美xxxx免费岛国不卡电影| 国产精品久久久久久久久久齐齐| 日本不卡中文字幕| 日本精品另类| 国产精品一区二区av交换| 欧美日韩亚洲一区在线观看| 日本高清久久| 91福利精品在线观看| 亚洲欧美视频| 模特精品在线| 日韩欧美久久| 欧美1区2区3| 激情综合婷婷| 日韩国产综合| 欧美网站在线| 亚洲欧美一级| 国产精品一区二区精品视频观看| 国产精品资源| 日韩精品1区| 欧美在线资源| 四虎成人精品一区二区免费网站| 日产欧产美韩系列久久99| 欧美亚洲一区二区三区| 欧美亚洲tv| 9999国产精品| 欧美日韩日本国产亚洲在线| 免费在线观看成人| 91成人在线精品视频| 欧美激情另类| 蜜臀av在线播放一区二区三区| 日本强好片久久久久久aaa| 欧美精品1区| 欧美日韩四区| 美女视频黄免费的久久| 不卡一区综合视频| 国产精品一区二区免费福利视频| 亚洲成人不卡| 啪啪亚洲精品| 欧美国产美女| 亚洲精品乱码久久久久久蜜桃麻豆| 国产一区丝袜| 综合激情五月婷婷| 亚洲精品福利电影| 日韩**一区毛片| 欧美一区二区三区高清视频| 国产日韩欧美一区| 亚洲夜间福利| 你懂的亚洲视频| 日本不卡视频一二三区| 久久精品av| аⅴ资源天堂资源库在线| 日韩精品乱码av一区二区| 欧美69视频| 欧美精品福利| 亚洲三级国产| 国产字幕视频一区二区| 精品无人区麻豆乱码久久久| 日韩在线成人| 夜久久久久久| 97人人精品| 精品视频一区二区三区在线观看 | 国产精品天堂蜜av在线播放| 免费观看久久久4p| 亚洲一级二级| 久久久影院免费| 91精品国产乱码久久久久久久| 青草国产精品| 日韩一区二区三区四区五区| 免费人成网站在线观看欧美高清| 亚洲午夜视频| 黄色日韩在线| 老鸭窝毛片一区二区三区| 亚洲国产不卡| 日韩精品一级二级 | 久久久久99| 亚洲大片在线| 亚洲欧美日韩国产一区二区| 亚洲免费网址| 热久久免费视频| 在线精品福利| 日韩av二区在线播放| 国产精品久久久久久av公交车| 国产图片一区| a天堂资源在线| 影院欧美亚洲| 亚洲免费一区三区| 国产精品天天看天天狠| 国产亚洲久久| 久久中文字幕导航| 日韩精品欧美激情一区二区| 亚洲男女av一区二区| 亚洲一区二区免费在线观看| 国产欧美88| 国产成人精品福利| 日本不良网站在线观看| 999在线观看精品免费不卡网站| 亚洲精品激情| 国产精品乱战久久久| 日韩毛片在线| 亚洲精品日本| av资源新版天堂在线| 久久久成人网| 69精品国产久热在线观看| 国产一区二区三区四区大秀| 亚洲国产不卡| 奇米亚洲欧美| 亚洲大全视频| 久久精品国产在热久久| 亚洲精品网址| 91九色综合| 在线视频免费在线观看一区二区| 欧美aa在线视频| 最新国产精品视频| 色偷偷色偷偷色偷偷在线视频| 免费在线成人网| 日本少妇一区| 国产调教精品| 亚洲天堂日韩在线| 欧美亚洲精品在线| 麻豆成人91精品二区三区| 国产亚洲精品久久久久婷婷瑜伽| 青草国产精品久久久久久| 91精品亚洲| 国产毛片精品| 婷婷中文字幕一区| bbw在线视频| 国产在线观看91一区二区三区 | av亚洲一区二区三区| 69堂免费精品视频在线播放| 亚洲色诱最新| 久久国产直播| 欧美男人天堂| 日本久久综合| 精品午夜视频| 国产精品红桃| 国产探花一区| 国产美女视频一区二区| 男女男精品网站| 亚洲网址在线观看| 视频一区二区欧美| 午夜日本精品| 国产婷婷精品| 亚洲图片久久| 视频一区免费在线观看| 午夜在线一区二区| 亚洲精品乱码| 清纯唯美亚洲综合一区| 欧美成人精品午夜一区二区| 激情综合婷婷| 欧美aa国产视频| 亚洲视频电影在线| 无码日韩精品一区二区免费|