校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁(yè) > 知識(shí)庫(kù) > python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)

python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)

熱門(mén)標(biāo)簽:北京外呼電銷(xiāo)機(jī)器人招商 南京crm外呼系統(tǒng)排名 賓館能在百度地圖標(biāo)注嗎 400電話 申請(qǐng) 條件 汕頭電商外呼系統(tǒng)供應(yīng)商 crm電銷(xiāo)機(jī)器人 云南地圖標(biāo)注 電銷(xiāo)機(jī)器人 金倫通信 鄭州智能外呼系統(tǒng)中心

楔子

python是一門(mén)很神奇的語(yǔ)言,原因在于它有很多的庫(kù)可以實(shí)現(xiàn)各種意想不到的功能。當(dāng)然我們這次介紹的庫(kù)所實(shí)現(xiàn)的功能卻是已經(jīng)很常見(jiàn)了,就是操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)。如果你寫(xiě)過(guò)游戲,那么即使不用下面即將介紹的庫(kù)也可以實(shí)現(xiàn)對(duì)鼠標(biāo)、鍵盤(pán)的操作以及監(jiān)控。

當(dāng)然我們下面介紹庫(kù):pynput,是專(zhuān)門(mén)針對(duì)鼠標(biāo)和鍵盤(pán)的,至于pygame、pyglet等游戲框架雖然也提供了鼠標(biāo)、鍵盤(pán)的監(jiān)控事件,但它們畢竟是用來(lái)開(kāi)發(fā)游戲的,還提供了創(chuàng)建窗口、圖形繪制、物體的碰撞檢測(cè)等等很多復(fù)雜的功能。如果只是單純的操作鼠標(biāo)和鍵盤(pán),使用這種游戲框架有點(diǎn)小題大做了,下面我們就來(lái)看看這個(gè)名叫pynput的模塊吧,看看它的使用方法。

鼠標(biāo)

操作鼠標(biāo)

鼠標(biāo)無(wú)非就是"點(diǎn)擊按住不放"、"松開(kāi)"、"雙擊"(針對(duì)左右鍵),滑動(dòng)滾輪,移動(dòng)鼠標(biāo)等等,這些功能已經(jīng)基本上覆蓋百分之八九十的日常使用了。至于剩下的一小部分,可能就是打游戲用到的"側(cè)鍵",但是我們不介紹那么多,先來(lái)看看常用的吧。

from pynput.mouse import Button, Controller

# 實(shí)例化Controller得到一個(gè)可以操作鼠標(biāo)的對(duì)象
mouse = Controller()
# mouse.position: 獲取當(dāng)前鼠標(biāo)位置。
# 屏幕左上角坐標(biāo)為(0, 0) 右下角為(屏幕寬度, 屏幕高度)
print(f"當(dāng)前鼠標(biāo)位置: {mouse.position}") # 當(dāng)前鼠標(biāo)位置: (881, 467)

# 給mouse.position賦值等于移動(dòng)鼠標(biāo),這里相當(dāng)于移動(dòng)到(100, 100)的位置
# 如果坐標(biāo)小于0,那么等于0。如果超出屏幕范圍,那么等于最大范圍
mouse.position = (100, 100) # 此方法等價(jià)于mouse.move(100, 100)
print(f"當(dāng)前鼠標(biāo)位置: {mouse.position}") # 當(dāng)前鼠標(biāo)位置: (100, 100)


# 按下左鍵,同理Button.right是右鍵
mouse.press(Button.left)
# 松開(kāi)左鍵
mouse.release(Button.left)
# 上面兩行連在一起等于一次單擊。如果上面兩行緊接著再重復(fù)一次,那么整體會(huì)實(shí)現(xiàn)雙擊的效果
# 因?yàn)閮纱螁螕羰沁B續(xù)執(zhí)行的,沒(méi)有等待時(shí)間。如果中間來(lái)一個(gè)time.sleep幾秒,那么就變成兩次單擊了


# 當(dāng)然鼠標(biāo)點(diǎn)擊我們有更合適的辦法,使用click函數(shù)
# 該函數(shù)接收兩個(gè)參數(shù):點(diǎn)擊鼠標(biāo)的哪個(gè)鍵、以及點(diǎn)擊次數(shù)
# 這里連續(xù)點(diǎn)擊兩次,等于雙擊
mouse.click(Button.right, 2)

還有一個(gè)功能比較常見(jiàn),我們需要拿出來(lái)單獨(dú)說(shuō),是因?yàn)檫@個(gè)需要找張圖片來(lái)演示。

這種情況我們?nèi)绻胫栏鄡?nèi)容,需要向下滑動(dòng),也就是沿著y軸滑動(dòng)

from pynput.mouse import Controller

mouse = Controller()

# 垂直方向、沿著y軸滑動(dòng)
# 第一個(gè)參數(shù)是針對(duì)水平方向的,暫時(shí)不用管,為0則表示不變。
# 第二個(gè)參數(shù)是針對(duì)垂直方向的,大于0表示向下,小于0表示向上
mouse.scroll(0, 2)

我們上面是向下移動(dòng)兩個(gè)step,什么是step呢?

點(diǎn)擊一次就會(huì)移動(dòng)一個(gè)step

同理這個(gè)就是在水平方向上移動(dòng)

from pynput.mouse import Controller

mouse = Controller()
# 大于0向右,小于0向左
mouse.scroll(3, 0)

可能有人好奇,可不可以水平、垂直兩個(gè)方向同時(shí)移動(dòng)呢?答案是不可以,因?yàn)檫@是模擬人來(lái)點(diǎn)擊,無(wú)非就是效率的問(wèn)題,所以也要符合常理,因?yàn)槲覀兤綍r(shí)用鼠標(biāo)顯然不可能兩個(gè)方向同時(shí)移動(dòng)。

監(jiān)控鼠標(biāo)

我們可以使用pynput操作鼠標(biāo),同時(shí)pynput也支持我們?cè)谑謩?dòng)操作鼠標(biāo)的時(shí)候記錄我們做了哪些操作,同理后面介紹的鍵盤(pán)也是一樣的,都分為操作、監(jiān)控兩部分。

from pynput.mouse import Listener


def on_move(x, y):
 print(f"鼠標(biāo)移動(dòng)到: ({x}, {y})")


def on_click(x, y, button, is_press):
 print(f"鼠標(biāo){button}鍵在({x}, {y})處{'按下' if is_press else '松開(kāi)'}")


def on_scroll(x, y, dx, dy):
 if dx:
  print(f"滑輪在({x}, {y})處向{'右' if dx > 0 else '左'}滑")
 else:
  print(f"滑輪在({x}, {y})處向{'下' if dy > 0 else '上'}滑")


with Listener(
 # 上面函數(shù)名不能變,記得對(duì)應(yīng)
 on_move=on_move,
 on_click=on_click,
 on_scroll=on_scroll
) as listener:
 listener.join()
"""
鼠標(biāo)移動(dòng)到: (1090, 369)
鼠標(biāo)移動(dòng)到: (1090, 368)
鼠標(biāo)移動(dòng)到: (1090, 368)
鼠標(biāo)移動(dòng)到: (1090, 367)
鼠標(biāo)Button.left鍵在(1090, 367)處按下
鼠標(biāo)Button.left鍵在(1090, 367)處松開(kāi)
滑輪在(1090, 367)處向上滑
"""

上面實(shí)例化一個(gè)Listener時(shí),相當(dāng)于開(kāi)啟了一個(gè)線程,因?yàn)長(zhǎng)istener這個(gè)類(lèi)繼承自threading.Thread。所以我們調(diào)用listener.join()相當(dāng)于就阻塞在這里了,會(huì)一直監(jiān)控鼠標(biāo)事件。所以我們需要一個(gè)機(jī)制來(lái)讓它停下來(lái):

from pynput.mouse import Listener, Button


def on_move(x, y):
 print(f"鼠標(biāo)移動(dòng)到: ({x}, {y})")


def on_click(x, y, button, is_press):
 if button == Button.right:
  # 一旦當(dāng)某個(gè)事件返回了False,那么就會(huì)停止了
  # 這里我們選擇右鍵吧
  print("點(diǎn)擊右鍵,停止監(jiān)控")
  return False
 print(f"鼠標(biāo){button}鍵在({x}, {y})處{'按下' if is_press else '松開(kāi)'}")


def on_scroll(x, y, dx, dy):
 if dx:
  print(f"滑輪在({x}, {y})處向{'右' if dx > 0 else '左'}滑")
 else:
  print(f"滑輪在({x}, {y})處向{'下' if dy > 0 else '上'}滑")


with Listener(
 on_move=on_move,
 on_click=on_click,
 on_scroll=on_scroll
) as listener:
 listener.join()
"""
鼠標(biāo)Button.left鍵在(881, 606)處按下
鼠標(biāo)Button.left鍵在(881, 606)處松開(kāi)
點(diǎn)擊右鍵,停止監(jiān)控
"""

另外執(zhí)行的時(shí)候,你會(huì)發(fā)現(xiàn),程序會(huì)一直阻塞在listener.join()處,如果下面還有代碼要怎么執(zhí)行呢?

from pynput.mouse import Listener


def on_move(x, y):
 print(f"鼠標(biāo)移動(dòng)到: ({x}, {y})")


def on_click(x, y, button, is_press):
 print(f"鼠標(biāo){button}鍵在({x}, {y})處{'按下' if is_press else '松開(kāi)'}")


def on_scroll(x, y, dx, dy):
 if dx:
  print(f"滑輪在({x}, {y})處向{'右' if dx > 0 else '左'}滑")
 else:
  print(f"滑輪在({x}, {y})處向{'下' if dy > 0 else '上'}滑")


listener = Listener(
 on_move=on_move,
 on_click=on_click,
 on_scroll=on_scroll)

# 啟動(dòng)線程,主線程會(huì)繼續(xù)向下執(zhí)行
listener.start()
print("執(zhí)行下面代碼")
print(123)

# 此外我們也可以不通過(guò)讓事件返回False,結(jié)束監(jiān)聽(tīng)
# 而是就讓它一直監(jiān)聽(tīng),等我們的邏輯執(zhí)行完畢之后,手動(dòng)結(jié)束監(jiān)聽(tīng)
# 結(jié)束監(jiān)聽(tīng)是通listener.stop()
import time
time.sleep(3) # 這里睡3s,相當(dāng)于執(zhí)行一段長(zhǎng)邏輯了,否則子線程還未啟動(dòng),就直接被主線程強(qiáng)制stop掉了
# 結(jié)束監(jiān)聽(tīng)
listener.stop()
print("程序結(jié)束")
"""
執(zhí)行下面代碼
123
鼠標(biāo)移動(dòng)到: (850, 525)
鼠標(biāo)Button.left鍵在(850, 525)處按下
鼠標(biāo)Button.left鍵在(850, 525)處松開(kāi)
鼠標(biāo)Button.right鍵在(850, 525)處按下
鼠標(biāo)Button.right鍵在(850, 525)處松開(kāi)
程序結(jié)束
"""

鍵盤(pán)

操作鍵盤(pán)也比較簡(jiǎn)單,無(wú)非也是按下某個(gè)鍵、松開(kāi)某個(gè)鍵,或者在按下某個(gè)鍵(或者多個(gè))不松開(kāi)的前提下、按下另一個(gè)鍵,下面來(lái)操作一下。方法和操作鼠標(biāo)比較類(lèi)似:

from pynput.keyboard import Key, Controller

# 實(shí)例化一個(gè)可以操作鍵盤(pán)的對(duì)象
keyboard = Controller()

# 按下a鍵,小寫(xiě)
keyboard.press("a")
# 松開(kāi)a鍵
keyboard.release("a")

# 按下A鍵,大寫(xiě)
keyboard.press("A")
# 松開(kāi)A鍵
keyboard.release("A")
"""
像英文字符、數(shù)字等等直接輸入相應(yīng)的字符即可
但如果是shift、ctrl等鍵,那么需要調(diào)用Key里面屬性
"""
# 按下大寫(xiě)鍵
keyboard.press(Key.caps_lock)
# 松開(kāi)大寫(xiě)鍵
keyboard.release(Key.caps_lock)

下面來(lái)看看如何在按住某個(gè)鍵不放的前提下,按下另外的鍵

from pynput.keyboard import Key, Controller

# 實(shí)例化一個(gè)可以操作鍵盤(pán)的對(duì)象
keyboard = Controller()

# 注意調(diào)用的方法,是pressed,不是press
# shift有兩個(gè)鍵,一個(gè)是左邊的、一個(gè)是右邊的
with keyboard.pressed(Key.shift_l):
 keyboard.press("1")
 keyboard.release("1")
"""
上面的結(jié)果會(huì)輸出一個(gè)感嘆號(hào),另外我們鍵盤(pán)的上方有數(shù)字鍵、右側(cè)也有數(shù)字鍵。
我們平時(shí)輸出感嘆號(hào)用的都是shift加上鍵盤(pán)上方的數(shù)字鍵,用右側(cè)的數(shù)字鍵會(huì)沒(méi)有效果

但是對(duì)于pynput則沒(méi)有區(qū)別,都會(huì)輸出感嘆號(hào),因?yàn)槟阌面I盤(pán)上方和有方的數(shù)字鍵打出來(lái)的都是數(shù)字
"""
# 如果要同時(shí)按下多個(gè)鍵呢?那就輸入多個(gè)鍵即可,細(xì)心的老鐵可能發(fā)現(xiàn)了,這正是pycharm啟動(dòng)程序的快捷鍵
with keyboard.pressed(Key.shift_l, Key.ctrl_l):
 keyboard.press(Key.f10)

監(jiān)控

監(jiān)控鍵盤(pán)使用的方法和監(jiān)控鼠標(biāo)非常類(lèi)似,依舊是實(shí)例化一個(gè)類(lèi)Listener

from pynput.keyboard import Key, Listener


# 此時(shí)的Listener是從keyboard里面導(dǎo)入的

def on_press(key):
 # 當(dāng)按下esc,結(jié)束監(jiān)聽(tīng)
 if key == Key.esc:
  print(f"你按下了esc,監(jiān)聽(tīng)結(jié)束")
  return False
 print(f"你按下了{(lán)key}鍵")


def on_release(key):
 print(f"你松開(kāi)了{(lán)key}鍵")


with Listener(on_press=on_press, on_release=on_release) as listener:
 listener.join()
"""
你按下了'a'鍵
你松開(kāi)了'a'鍵
你按下了Key.shift鍵
你松開(kāi)了Key.shift鍵
你按下了Key.right鍵
你松開(kāi)了Key.right鍵
你按下了Key.down鍵
你松開(kāi)了Key.down鍵
你按下了esc,監(jiān)聽(tīng)結(jié)束
"""

所以定義函數(shù)的方式和操作鼠標(biāo)也是類(lèi)似的,該Listener同樣會(huì)開(kāi)啟一個(gè)線程。另外這里的key打印的是'Key.xxx',我們轉(zhuǎn)成字符串其實(shí)已經(jīng)可以判斷按下了哪個(gè)鍵了。不過(guò)key里面還是提供了方法,讓我們獲取操作的鍵

from pynput.keyboard import Key, Listener

def on_press(key):
 """
 我們之前說(shuō)按下某個(gè)鍵的時(shí)候,如果是英文字符、數(shù)字這些,直接輸入相應(yīng)的字符即可
 但如果是ctrl、shift這些鍵,需要從keyboard.Key里面獲取

 那么同理,在這里我們?nèi)绻胍@取具體按下、松開(kāi)哪個(gè)鍵的話,那么可以調(diào)用key.char或者key.name
 如果是英文字符、數(shù)字這些,調(diào)用key.char;如果是ctrl、shift、f1、f12這些鍵,則需要調(diào)用key.name
 """
 if key == Key.esc:
  print(f"你按下了esc,監(jiān)聽(tīng)結(jié)束")
  return False
 print(f"你按下了{(lán)key.char if hasattr(key, 'char') else key.name}鍵")


def on_release(key):
 print(f"你松開(kāi)了{(lán)key.char if hasattr(key, 'char') else key.name}鍵")


with Listener(on_press=on_press, on_release=on_release) as listener:
 listener.join()
"""
你按下了shift鍵
你松開(kāi)了shift鍵
你按下了a鍵
你松開(kāi)了a鍵
你按下了esc,監(jiān)聽(tīng)結(jié)束
"""

此時(shí)返回的就是普通的鍵的名稱,沒(méi)有Key.這個(gè)前綴了。
以上就是這個(gè)模塊的內(nèi)容了,具體怎么使用可以由你自己決定。另外這個(gè)模塊在Linux上也是可以運(yùn)行的,但前提是必須有顯示器,而公司用的服務(wù)器肯定是不帶顯示器的,所以不推薦Linux上使用

以上就是python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)的詳細(xì)內(nèi)容,更多關(guān)于python pynput庫(kù)操作監(jiān)控鼠標(biāo)鍵盤(pán)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • 用Python監(jiān)控你的朋友都在瀏覽哪些網(wǎng)站?
  • python只需30行代碼就能記錄鍵盤(pán)的一舉一動(dòng)
  • Python實(shí)時(shí)監(jiān)控網(wǎng)站瀏覽記錄實(shí)現(xiàn)過(guò)程詳解
  • python自動(dòng)發(fā)微信監(jiān)控報(bào)警
  • 你知道怎么用Python監(jiān)控聊天記錄嗎

標(biāo)簽:懷化 浙江 昆明 西寧 石家莊 文山 錫林郭勒盟 梅州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)》,本文關(guān)鍵詞  python,使用,pynput,庫(kù),操作,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    99久久免费精品| 国产成人在线电影| 欧美一区日韩一区| 日韩 欧美一区二区三区| 日韩色视频在线观看| 紧缚奴在线一区二区三区| 久久精品无码一区二区三区| 国产剧情av麻豆香蕉精品| 久久久不卡网国产精品二区| 99久久99久久免费精品蜜臀| 亚洲摸摸操操av| 欧美男人的天堂一二区| 狠狠色丁香婷综合久久| 中文字幕成人在线观看| 欧洲色大大久久| 免费高清视频精品| 国产蜜臀av在线一区二区三区| 99久久99久久久精品齐齐| 亚洲第一成人在线| 精品成人佐山爱一区二区| www.亚洲在线| 奇米色一区二区三区四区| 国产精品网站一区| 欧美午夜电影在线播放| 麻豆精品视频在线| 亚洲欧洲韩国日本视频| 欧美日韩免费观看一区三区| 麻豆91精品视频| 亚洲女子a中天字幕| 日韩欧美一区在线| 97精品国产露脸对白| 日韩在线播放一区二区| 欧美激情一区二区三区蜜桃视频| 欧美日韩一区二区三区高清| 国产麻豆精品在线观看| 亚洲成人黄色小说| 中文子幕无线码一区tr| 欧美一区二区三区视频| 99视频国产精品| 蜜桃视频免费观看一区| 亚洲色图制服丝袜| 久久中文娱乐网| 欧美亚洲国产一区二区三区va| 国产在线精品国自产拍免费| 亚洲曰韩产成在线| 国产精品福利一区| 26uuu亚洲婷婷狠狠天堂| 精品视频在线视频| 91碰在线视频| 国产**成人网毛片九色 | av爱爱亚洲一区| 蜜桃av噜噜一区| 亚洲一区二区三区四区五区黄| 国产欧美日韩在线| 精品国产免费久久| 欧美一区二区三区在| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 国产一区二区三区久久久| 日韩一区欧美二区| 亚洲国产中文字幕| 伊人色综合久久天天人手人婷| 久久久久国产精品厨房| 精品久久久久一区| 88在线观看91蜜桃国自产| 欧洲亚洲精品在线| 色一情一伦一子一伦一区| 99久久国产综合精品女不卡| 成人免费视频播放| 国产精品18久久久久久久久| 极品销魂美女一区二区三区| 另类中文字幕网| 久久99国产精品麻豆| 狠狠色2019综合网| 狠狠色2019综合网| 国产精品亚洲第一| 国产成人综合视频| 成人黄色在线视频| 99精品国产91久久久久久| 99riav久久精品riav| 99精品久久只有精品| 91美女在线观看| 26uuu精品一区二区三区四区在线| 欧美精品777| 日韩美女主播在线视频一区二区三区| 日韩一区二区三区电影| 91精品欧美一区二区三区综合在| 日韩一区二区三区av| 精品粉嫩超白一线天av| 国产亚洲一区二区三区在线观看| 国产欧美视频一区二区| 最新国产成人在线观看| 亚洲欧美日韩人成在线播放| 一区二区三区欧美久久| 五月激情六月综合| 久久99国产精品尤物| 国产成人av电影免费在线观看| 成人午夜视频网站| 色诱视频网站一区| 在线观看91av| 国产亚洲综合色| 国产成人综合亚洲91猫咪| 色女孩综合影院| www.色综合.com| 欧美日韩精品综合在线| 欧美丝袜丝nylons| 日韩免费观看高清完整版在线观看| 久久久久久久电影| 亚洲免费观看高清完整| 天天综合日日夜夜精品| 国产美女视频91| caoporn国产一区二区| 欧美三级电影精品| 久久综合久久99| 亚洲免费毛片网站| 精品在线一区二区三区| 99re热视频精品| 91精品国产全国免费观看| 久久久蜜桃精品| 一区二区三区在线观看网站| 免费观看一级欧美片| 成人短视频下载| 日韩一区二区免费在线观看| 久久这里只有精品6| 亚洲婷婷综合久久一本伊一区| 亚洲va国产天堂va久久en| 国产精品自拍一区| 欧美三级日韩三级| 国产精品嫩草99a| 三级精品在线观看| 99国产精品久久久| 精品少妇一区二区三区| 亚洲免费色视频| 国产成人亚洲综合a∨婷婷图片| 在线亚洲免费视频| 久久久精品免费网站| 日本伊人精品一区二区三区观看方式| 成人av在线资源网站| www国产亚洲精品久久麻豆| 亚洲成人1区2区| av资源站一区| 欧美激情综合五月色丁香小说| 日本特黄久久久高潮| 在线观看日韩精品| 国产精品欧美一级免费| 精品中文字幕一区二区| 91精品福利在线一区二区三区| 亚洲日本中文字幕区| 国产精品白丝jk黑袜喷水| 欧美电影免费观看完整版| 日日夜夜精品视频免费| 欧美性高清videossexo| 中文字幕在线一区免费| 国产精品99久| 久久老女人爱爱| 国产精品自拍在线| 久久综合久久综合亚洲| 日韩精品三区四区| 欧美三级电影在线观看| 亚洲自拍欧美精品| 欧美日免费三级在线| 亚洲三级小视频| 一本到高清视频免费精品| 亚洲私人黄色宅男| 91丨九色丨尤物| 中文字幕日韩精品一区| 成人的网站免费观看| 国产精品国产成人国产三级 | 中文字幕中文字幕一区| 成人一二三区视频| 国产精品久久久久三级| 91麻豆国产福利在线观看| 亚洲欧美日韩小说| 在线免费av一区| 亚洲午夜影视影院在线观看| 精品视频全国免费看| 天堂av在线一区| 欧美电视剧免费观看| 国产精品亚洲一区二区三区在线| 日本一区免费视频| 99re热这里只有精品视频| 亚洲免费观看高清完整版在线观看熊 | 成人av在线播放网址| 18成人在线观看| 欧美视频中文字幕| 免费一级片91| 久久精品欧美日韩精品| 91婷婷韩国欧美一区二区| 亚洲午夜在线视频| 精品裸体舞一区二区三区| 国产ts人妖一区二区| 亚洲视频综合在线| 欧美日韩电影在线| 激情六月婷婷久久| ●精品国产综合乱码久久久久| 欧美午夜片在线看| 久久精品国产在热久久| 成人欧美一区二区三区黑人麻豆| 欧美性一二三区| 狠狠色伊人亚洲综合成人| 亚洲美女免费在线|