日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python——click模块

發布時間:2023/12/18 python 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python——click模块 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Click?是?Flask?的開發團隊?Pallets?的另一款開源項目,它是用于快速創建命令行的第三方模塊。

我們知道,Python 內置了一個?Argparse?的標準庫用于創建命令行,但使用起來有些繁瑣,Click?相比于?Argparse,就好比?requests?相比于?urllib。

Click?是一個第三方庫,因此,在使用之前需要先安裝:

1

pip?install?click

參考文檔http://click.pocoo.org/6/options/


Click 對argparse 的主要改進在易用性,使用Click 分為兩個步驟:

  • 使用?@click.command()?裝飾一個函數,使之成為命令行接口;
  • 使用?@click.option()?等裝飾函數,為其添加命令行選項等。
  • 看一下官方文檔的入門例子:

    import click@click.command() @click.option('--count', default=1, help='Number of greetings.') @click.option('--name', prompt='Your name', help='The person to greet.') def hello(count, name):"""Simple program that greets NAME for a total of COUNT times."""for x in range(count):click.echo('Hello %s!' % name)if __name__ == '__main__':hello()

    ?

    在上面的例子中,函數 hello 有兩個參數:count 和 name,它們的值從命令行中獲取。

    ?

    • @click.command() 使函數 hello 成為命令行接口;

    • @click.option 的第一個參數指定了命令行選項的名稱,可以看到,count 的默認值是 1;

    • 使用 click.echo 進行輸出是為了獲得更好的兼容性,因為 print 在 Python2 和 Python3 的用法有些差別。

    ?

    執行情況

    $ python hello.py Your name: Ethan # 這里會顯示 'Your name: '(對應代碼中的 prompt),接受用戶輸入 Hello Ethan!$ python hello.py --help # click 幫我們自動生成了 `--help` 用法 Usage: hello.py [OPTIONS]Simple program that greets NAME for a total of COUNT times.Options:--count INTEGER Number of greetings.--name TEXT The person to greet.--help Show this message and exit.$ python hello.py --count 3 --name Ethan # 指定 count 和 name 的值 Hello Ethan! Hello Ethan! Hello Ethan!$ python hello.py --count=3 --name=Ethan # 也可以使用 `=`,和上面等價 Hello Ethan! Hello Ethan! Hello Ethan!$ python hello.py --name=Ethan # 沒有指定 count,默認值是 1 Hello Ethan!

    ?

    回到頂部

    Group使用

    Click 通過 group 來創建一個命令行組,也就是說它可以有各種參數來解決相同類別的不同問題

    import click@click.group() def cli():pass@click.command() def initdb():click.echo('Initialized the database') ···· @click.command() def dropdb():click.echo('Droped the database')cli.add_command(initdb) cli.add_command(dropdb)if __name__ == "__main__":cli()

    執行情況

    $ python hello.py Usage: hello.py [OPTIONS] COMMAND [ARGS]...Options:--help Show this message and exit.Commands:dropdbinitdb $ python hello.py initdb Initialized the database $ python hello.py dropdb Droped the database

    ?

    ?

    ?click.option使用

    option 最基本的用法就是通過指定命令行選項的名稱,從命令行讀取參數值,再將其傳遞給函數。

    在上面的例子,我們看到,除了設置命令行選項的名稱,我們還會指定默認值,help 說明等,option 常用的設置參數如下:

    ?

    • default: 設置命令行參數的默認值

    • help: 參數說明

    • type: 參數類型,可以是 string, int, float 等

    • prompt: 當在命令行中沒有輸入相應的參數時,會根據 prompt 提示用戶輸入

    • nargs: 指定命令行參數接收的值的個數

    • metavar:如何在幫助頁面表示值

    ?

    下面,我們再看看相關的例子。

    指定 type

    我們可以使用 type 來指定參數類型:

    import click@click.command() @click.option('--rate', type=float, help='rate') # 指定 rate 是 float 類型 def show(rate):click.echo('rate: %s' % rate)if __name__ == '__main__':show()

    ?

    ?執行情況:

    $ python click_type.py --help Usage: click_type.py [OPTIONS]Options:--rate FLOAT rate--help Show this message and exit.$ python click_type.py --rate 1 rate: 1.0 $ python click_type.py --rate 0.66 rate: 0.66

    ?

    可選值

    在某些情況下,一個參數的值只能是某些可選的值,如果用戶輸入了其他值,我們應該提示用戶輸入正確的值。

    在這種情況下,我們可以通過 click.Choice() 來限定

    執行情況:

    $ python click_choice.py --help Usage: click_choice.py [OPTIONS]Options:--gender [man|woman]--help Show this message and exit.$ python click_choice.py --gender boy Usage: click_choice.py [OPTIONS]Error: Invalid value for "--gender": invalid choice: boy. (choose from man, woman)$ python click_choice.py --gender man gender: man

    ?

    多值參數

    有時,一個參數需要接收多個值。option?支持設置固定長度的參數值,通過?nargs?指定。

    $ python click_multi_values.py --help Usage: click_multi_values.py [OPTIONS]Options:--center FLOAT... center of the circle--radius FLOAT radius of the circle$ python click_multi_values.py --center 3 4 --radius 10 center: (3.0, 4.0), radius: 10.0$ python click_multi_values.py --center 3 4 5 --radius 10 Usage: click_multi_values.py [OPTIONS]Error: Got unexpected extra argument (5)

    ?

    輸入密碼

    ?有時,在輸入密碼的時候,我們希望能隱藏顯示。option 提供了兩個參數來設置密碼的輸入:

    hide_input 和 confirmation_promt,其中,hide_input 用于隱藏輸入,confirmation_promt 用于重復輸入。

    import click@click.command() @click.option('--password', prompt=True, hide_input=True, confirmation_prompt=True) def input_password(password):click.echo('password: %s' % password)if __name__ == '__main__':input_password()

    ?

    執行情況:

    $ python click_password.py Password: # 不會顯示密碼 Repeat for confirmation: # 重復一遍 password: 123

    click 也提供了一種快捷的方式,通過使用 @click.password_option(),上面的代碼可以簡寫成:

    import click@click.command() @click.password_option() def input_password(password):click.echo('password: %s' % password)if __name__ == '__main__':input_password()

    ?click.IntRange()

    @click.command() @click.option('--count', type=click.IntRange(0, 20, clamp=True)) @click.option('--digit', type=click.IntRange(0, 10)) def repeat(count, digit):click.echo(str(digit) * count)if __name__ == '__main__':repeat()========================================= $ repeat --count=1000 --digit=5 55555555555555555555 $ repeat --count=1000 --digit=12 Usage: repeat [OPTIONS]Error: Invalid value for "--digit": 12 is not in the valid range of 0 to 10.

    ?

    ?

    改變命令行程序的執行

    ?有些參數會改變命令行程序的執行,比如在終端輸入 python 是進入 python 控制臺,

    而輸入 python --version 是打印 python 版本。Click 提供 eager 標識對參數名進行標識,

    如果輸入該參數,則會攔截既定的命令行執行流程,跳轉去執行一個回調函數。

    import click def print_version(ctx, param, value):if not value or ctx.resilient_parsing:returnclick.echo('Version 1.0')ctx.exit() @click.command() @click.option('--version', is_flag=True, callback=print_version,expose_value=False, is_eager=True) @click.option('--name', default='Ethan', help='name') def hello(name):click.echo('Hello %s!' % name) if __name__ == '__main__':hello()

    ?

    其中:

    • is_eager=True?表明該命令行選項優先級高于其他選項;
    • expose_value=False?表示如果沒有輸入該命令行選項,會執行既定的命令行流程;
    • callback?指定了輸入該命令行選項時,要跳轉執行的函數
    • is_flag=True 表明參數值可以省略

    執行情況:

    $ python click_eager.py Hello Ethan! $ python click_eager.py --version # 攔截既定的命令行執行流程 Version 1.0 $ python click_eager.py --name Michael Hello Michael! $ python click_eager.py --version --name Ethan # 忽略 name 選項 Version 1.0

    ?

    使用argument

    我們除了使用?@click.option?來添加可選參數,還會經常使用?@click.argument?來添加固定參數。

    它的使用和 option 類似,但支持的功能比 option 少。

    入門使用

    下面是一個簡單的例子:

    import click @click.command() @click.argument('coordinates') def show(coordinates):click.echo('coordinates: %s' % coordinates) if __name__ == '__main__':show()

    看看執行情況:

    $ python click_argument.py # 錯誤,缺少參數 coordinates Usage: click_argument.py [OPTIONS] COORDINATES Error: Missing argument "coordinates". $ python click_argument.py --help # argument 指定的參數在 help 中沒有顯示 Usage: click_argument.py [OPTIONS] COORDINATES Options:--help Show this message and exit. $ python click_argument.py --coordinates 10 # 錯誤用法,這是 option 參數的用法 Error: no such option: --coordinates $ python click_argument.py 10 # 正確,直接輸入值即可 coordinates: 10

    ?

    多個 argument

    import click @click.command() @click.argument('x') @click.argument('y') @click.argument('z') def show(x, y, z):click.echo('x: %s, y: %s, z:%s' % (x, y, z)) if __name__ == '__main__':show()

    執行情況

    $ python click_argument.py 10 20 30 x: 10, y: 20, z:30 $ python click_argument.py 10 Usage: click_argument.py [OPTIONS] X Y Z Error: Missing argument "y". $ python click_argument.py 10 20 Usage: click_argument.py [OPTIONS] X Y Z Error: Missing argument "z". $ python click_argument.py 10 20 30 40 Usage: click_argument.py [OPTIONS] X Y Z Error: Got unexpected extra argument (40)

    ?

    不定參數

    argument 還有另外一種常見的用法,就是接收不定量的參數,讓我們看看例子:

    import click @click.command() @click.argument('src', nargs=-1) @click.argument('dst', nargs=1) def move(src, dst):click.echo('move %s to %s' % (src, dst)) if __name__ == '__main__':move()

    ?

    其中,nargs=-1?表明參數?src?接收不定量的參數值,參數值會以 tuple 的形式傳入函數。

    如果?nargs?大于等于 1,表示接收?nargs?個參數值,上面的例子中,dst?接收一個參數值。

    執行情況:

    $ python click_argument.py file1 trash # src=('file1',) dst='trash' move ('file1',) to trash $ python click_argument.py file1 file2 file3 trash # src=('file1', 'file2', 'file3') dst='trash' move ('file1', 'file2', 'file3') to trash

    ?

    Click 支持通過文件名參數對文件進行操作,click.File() 裝飾器就是處理這種操作的,尤其是在類 Unix 系統下,它支持以 - 符號作為標準輸入/輸出?

    # File @click.command() @click.argument('input', type=click.File('rb')) @click.argument('output', type=click.File('wb')) def inout(input, output):while True:chunk = input.read(1024)if not chunk:breakoutput.write(chunk)

    ?

    彩色輸出

    在前面的例子中,我們使用?click.echo?進行輸出,如果配合?colorama?這個模塊,

    我們可以使用?click.secho?進行彩色輸出,在使用之前,使用 pip 安裝 colorama:

    1

    $ pip install colorama

     例子:

    import click @click.command() @click.option('--name', help='The person to greet.') def hello(name):click.secho('Hello %s!' % name, fg='red', underline=True)click.secho('Hello %s!' % name, fg='yellow', bg='black') if __name__ == '__main__':hello()

    ?

    其中:

    • fg?表示前景顏色(即字體顏色),可選值有:BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE 等;
    • bg?表示背景顏色,可選值有:BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE 等;
    • underline?表示下劃線,可選的樣式還有:dim=True,bold=True?等;

    ?

    Click 通過 click.option() 添加可選參數,通過 click.argument() 來添加有可能可選的參數

    以下幾點是兩個的區別:

    • 需要提示補全輸入的時候使用 option()
    • 標志位(flag or acts) 使用 option()
    • option的值可以從環境變量獲取,而argument不行
    • option的值會在幫助里面列出,而argument不能

    ?

    安裝打包

    Click 支持使用?setuptools?來更好的實現命令行程序打包,把源碼文件打包成系統中的可執行程序,

    并且不限平臺。一般我們會在源碼根目錄下創建?setup.py?腳本,先看一段簡單的打包代碼

    from setuptools import setupsetup(name='hello',version='0.1',py_modules=['hello'],install_requires=['Click',],entry_points={'console_scripts': ['digest=hello:digest','goodbye=hello:goodbye']}, )

    ?

    hello.py

    默認情況下click不提供-h。需要使用context_settings參數來重寫默認help_option_names。

    import clickCONTEXT_SETTINGS = dict(help_option_names=['-h', '--help'])def greeter(**kwargs):output = '{0}, {1}!'.format(kwargs['greeting'],kwargs['name'])if kwargs['caps']:output = output.upper()print(output)@click.group(context_settings=CONTEXT_SETTINGS) @click.version_option(version='1.0.0') def greet():pass@greet.command() @click.argument('name') @click.option('--greeting', default='Hello', help='word to use for the greeting') @click.option('--caps', is_flag=True, help='uppercase the output') def hello(**kwargs):greeter(**kwargs)@greet.command() @click.argument('name') @click.option('--greeting', default='Goodbye', help='word to use for the greeting') @click.option('--caps', is_flag=True, help='uppercase the output') def goodbye(**kwargs):greeter(**kwargs)@greet.command() @click.option('--hash-type', type=click.Choice(['md5', 'sha1'])) def digest(hash_type):click.echo(hash_type)if __name__ == '__main__':greet()

    ?執行情況

    #python hello.py install # digest --hash-type md5 md5# goodbye --help Usage: goodbye [OPTIONS] NAMEOptions:--greeting TEXT word to use for the greeting--caps uppercase the output--help Show this message and exit. # goodbye --caps hh GOODBYE, HH!

    舉例說明

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    import?click

    ?

    CONTEXT_SETTINGS?=?dict(help_option_names=['-h',?'--help'])

    ?

    ?

    @click.group(context_settings=CONTEXT_SETTINGS)

    @click.version_option(version='1.0.0')

    def?cli():

    ????"""Repo is a command line tool that showcases how to build complex

    ????????command line interfaces with Click.

    ????????This tool is supposed to look like a distributed version control

    ????????system to show how something like this can be structured.

    ????)"""

    ????pass

    ?

    ?

    @cli.command()

    @click.argument('name', default='all', required=True)

    # @click.option('--greeting', default='Hello', help='word to use for the greeting')

    # @click.option('--caps', is_flag=True, help='uppercase the output')

    def?hellocmd(name):

    ????click.echo(

    ????????click.style(

    ????????????'I am colored %s and bold'?%

    ????????????name,

    ????????????fg='green',

    ????????????bold=True))

    ?

    ?

    @cli.command()

    @click.option('-t', default='a', required=True,

    ??????????????type=click.Choice(['a',?'h']), prompt=True,?help='檢查磁盤空間,a表示所有空間,h表示空間大于50%')

    def?dfcmd(t):

    ????"""

    ????檢查磁盤空間 dfcmd

    ????:param t:

    ????:return:

    ????"""

    ????click.echo(click.style('檢查磁盤空間', fg='green', bold=True))

    ?

    ?

    @cli.command(context_settings=CONTEXT_SETTINGS)

    @click.argument('x',?type=int, required=True)

    def?square(x):

    ????"""

    ????得到x平方 square x

    ????"""

    ????click.echo(click.style('x= %s'?%?x, fg='green', bold=True))

    ????print(x?*?x)

    ?

    ?

    if?__name__?==?'__main__':

    ????cli()

      

    輸出結果

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    54

    55

    56

    57

    58

    59

    XXXPycharmProjects\LuffyFTP\utils>python arg_example.py

    Usage: arg_example.py [OPTIONS] COMMAND [ARGS]...

    ?

    ??Repo?is?a command line tool that showcases how to build?complex

    ??command line interfaces with Click.???? This tool?is?supposed to look like

    ??a distributed version control???? system to show how something like this

    ??can be structured. )

    ?

    Options:

    ??--version?? Show the version?and?exit.

    ??-h,?--help??Show this message?and?exit.

    ?

    Commands:

    ??dfcmd???? 檢查磁盤空間 dfcmd :param t: :return:

    ??hellocmd

    ??square??? 得到x平方 square x

    ?

    XXXPycharmProjects\LuffyFTP\utils>python arg_example.py?-h

    Usage: arg_example.py [OPTIONS] COMMAND [ARGS]...

    ?

    ??Repo?is?a command line tool that showcases how to build?complex

    ??command line interfaces with Click.???? This tool?is?supposed to look like

    ??a distributed version control???? system to show how something like this

    ??can be structured. )

    ?

    Options:

    ??--version?? Show the version?and?exit.

    ??-h,?--help??Show this message?and?exit.

    ?

    Commands:

    ??dfcmd???? 檢查磁盤空間 dfcmd :param t: :return:

    ??hellocmd

    ??square??? 得到x平方 square x

    ?

    XXXPycharmProjects\LuffyFTP\utils>python arg_example.py dfcmd?-h

    Usage: arg_example.py dfcmd [OPTIONS]

    ?

    ??檢查磁盤空間 dfcmd :param t: :return:

    ?

    Options:

    ??-t [a|h]??? 檢查磁盤空間,a表示所有空間,h表示空間大于50%??[required]

    ??-h,?--help??Show this message?and?exit.

    ?

    XXXPycharmProjects\LuffyFTP\utils>python arg_example.py square?-h

    ?

    Usage: arg_example.py square [OPTIONS] X

    ?

    ??得到x平方 square x

    ?

    Options:

    ??-h,?--help??Show this message?and?exit.

    ?

    XXXPycharmProjects\LuffyFTP\utils>python arg_example.py square?5

    x5

    25

    ?

    XXXPycharmProjects\LuffyFTP\utils>python arg_example.py square?5

    x=?5

    25

      

    總結

    以上是生活随笔為你收集整理的Python——click模块的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    国产午夜麻豆影院在线观看 | 国产免费大片 | 麻豆精品传媒视频 | 91麻豆福利 | 天天爱天天操天天爽 | 欧美性色综合网站 | 日日夜夜免费精品 | 国产精品18videosex性欧美 | 国产韩国日本高清视频 | 国产黄色在线网站 | 精品一区二区免费 | 96亚洲精品久久久蜜桃 | 免费黄色看片 | 婷婷丁香国产 | 亚洲欧美日韩一二三区 | 国产精品免费视频观看 | 国产亚洲aⅴaaaaaa毛片 | 日韩伦理一区二区三区av在线 | 国产日本在线 | 狠狠操91| 91资源在线免费观看 | 亚洲成人av片在线观看 | 日韩欧美一区二区在线 | 成人免费看黄 | 日韩在线视 | 免费亚洲精品 | 中文字幕在线视频免费播放 | 日韩激情av在线 | 深夜福利视频在线观看 | 亚洲精品美女在线观看 | 国产高清中文字幕 | 天堂网一区 | 日韩特黄一级欧美毛片特黄 | 亚洲天堂毛片 | 婷久久 | 天天操婷婷 | 国产福利91精品一区 | 最新真实国产在线视频 | 成人v| 国产一区在线免费 | 免费成人黄色 | 91麻豆产精品久久久久久 | 99精品在线免费观看 | 欧美亚洲另类在线视频 | 久草免费在线观看视频 | 四虎www.| 久久久久久久亚洲精品 | 中文字幕电影在线 | 国产精品久久久久久久久久久久午夜 | 九九久久电影 | 成人av在线电影 | 亚洲精品久久久蜜臀下载官网 | 欧美精品一区在线发布 | 99精品欧美一区二区 | 亚洲精品国产第一综合99久久 | 色婷婷一区| 久久人人爽人人人人片 | 日韩欧美综合视频 | 在线观看91av| 久久国内视频 | 久久婷婷影视 | 久久精品视频在线播放 | 美女亚洲精品 | 91在线观看高清 | 中文乱幕日产无线码1区 | 免费福利在线 | 波多野结衣在线播放视频 | 欧美日韩视频在线一区 | 免费观看9x视频网站在线观看 | 在线视频精品 | 亚洲精品视频www | 亚洲天天摸日日摸天天欢 | 久99视频 | 久久天天躁狠狠躁夜夜不卡公司 | 91视频 - x99av| 亚洲欧美视频网站 | 国产日韩欧美精品在线观看 | 又色又爽又黄 | 国产黄色av影视 | 中文字幕 在线 一 二 | 久久精品在线 | 久久精品—区二区三区 | 天天天天天天干 | 亚洲精品国产片 | 亚洲精品在线观看不卡 | 国产精品久久久网站 | 91天天操 | 国产五月色婷婷六月丁香视频 | 婷婷色中文字幕 | 色视频成人在线观看免 | 成人av在线影视 | 色婷婷激情五月 | 久久久久久视频 | 福利一区视频 | 国内一级片在线观看 | 不卡视频一区二区三区 | 精品久久国产 | www天天操| 午夜视频在线观看欧美 | 91在线www| 大胆欧美gogo免费视频一二区 | 91福利视频免费观看 | 中文字幕在线看视频 | 日本h视频在线观看 | 少妇视频一区 | 国产一区免费观看 | 高清久久久久久 | 亚洲一区二区黄色 | 成人理论在线观看 | 九九视频在线播放 | 久久午夜免费观看 | 精品久久久久久久久久岛国gif | 中文字幕888| 狠狠操.com | 久久精品三级 | 激情小说久久 | 麻豆国产电影 | 国产伦精品一区二区三区高清 | 日韩成片 | 伊人手机在线 | 天天操夜夜做 | 97电影手机版 | 激情电影影院 | 国产一卡久久电影永久 | 国产精品 亚洲精品 | 天天干天天搞天天射 | 久操视频在线播放 | 久久经典视频 | 国内偷拍精品视频 | 亚洲一区二区视频 | 国产在线播放观看 | 狠狠色伊人亚洲综合网站野外 | 国产精品久久网站 | 在线免费视 | 国产精品网站一区二区三区 | 免费无遮挡动漫网站 | 日韩精选在线 | 在线只有精品 | 久久人人爽人人爽人人片av免费 | 最近高清中文字幕 | 国产精品丝袜 | 免费成人av | 久久五月精品 | 一区二区三区免费在线观看视频 | 中文字幕影片免费在线观看 | 久久视频在线 | 96久久欧美麻豆网站 | 91精品国产自产在线观看永久 | 中文字幕一区二区三区乱码在线 | 91免费高清 | 在线成人免费电影 | 免费在线黄网 | 久久久九色精品国产一区二区三区 | 亚洲资源在线 | 国产精品自产拍在线观看中文 | 一区二区三区免费播放 | 视频精品一区二区三区 | 99精品在线观看 | 97国产小视频 | 国产日韩三级 | 久久久久久久免费观看 | 国产中文字幕在线视频 | av一区二区三区在线播放 | 久久免费99精品久久久久久 | 中文字幕在线成人 | 在线免费av观看 | av黄网站| 国内精品视频久久 | 久久草av| 欧美日性视频 | av蜜桃在线 | 麻豆传媒视频在线 | 91丨精品丨蝌蚪丨白丝jk | 亚洲天堂香蕉 | 日本爱爱免费 | 国产一区二区三区 在线 | 九九热在线播放 | 色资源二区在线视频 | 色五婷婷| 欧美精品xx | 国内精品在线观看视频 | 日韩免费三级 | 久久精品美女视频 | 色香蕉视频 | 97在线看| 麻豆一二三精选视频 | 精品一区中文字幕 | 日韩精品高清视频 | 国产日韩欧美在线免费观看 | av中文国产 | 日韩视频区 | 中文字幕免费高清av | 丝袜av一区| 国产青春久久久国产毛片 | 97热在线观看 | 国产不卡免费 | 国产色就色 | 亚洲高清激情 | 国产中文字幕一区二区 | 日韩r级电影在线观看 | 亚洲电影第一页av | 日三级在线 | 麻豆一区在线观看 | 最近中文字幕高清字幕免费mv | 天天激情 | 97在线观看视频国产 | 黄色成人毛片 | 天天综合久久综合 | 99久久精品久久久久久动态片 | 日韩欧美在线一区 | 操操操日日 | 亚洲免费一级 | 成人在线超碰 | 胖bbbb搡bbbb擦bbbb | 日韩高清观看 | 在线播放av网址 | 玖玖在线免费视频 | av性在线 | 日韩欧美视频免费看 | 有没有在线观看av | 亚洲欧美偷拍另类 | 色大片免费看 | 久久99精品久久久久蜜臀 | 国产免费一区二区三区最新 | 免费高清看电视网站 | 久久久国产精品成人免费 | 97人人网 | 91中文字幕在线播放 | 欧美一级免费片 | 亚洲色图美腿丝袜 | 天天插天天狠 | 国产在线高清 | 久久夜色精品国产欧美乱极品 | 在线观看91精品视频 | 欧美日韩国产在线精品 | 久草视频播放 | 久久极品 | 国内精品视频一区二区三区八戒 | 福利久久久 | 国产精品美女www爽爽爽视频 | 一级黄色片网站 | 国产玖玖精品视频 | 在线99| 久久私人影院 | 麻豆国产在线播放 | 国产福利网站 | 国产一在线精品一区在线观看 | 99精品久久99久久久久 | 欧美福利视频一区 | av亚洲产国偷v产偷v自拍小说 | 激情开心站 | 免费成视频 | 特级毛片爽www免费版 | 六月色丁| 国产亚洲视频在线 | 在线观看国产成人av片 | 91av电影在线观看 | 国产精品久久久久一区二区三区 | 亚洲国产中文字幕 | 黄色日批网站 | 最近中文字幕免费大全 | 激情五月***国产精品 | 操操操日日 | 欧美二区三区91 | av三级av| 国产精品99久久久 | 亚洲黄色软件 | av在线超碰| 国产一区二区在线观看视频 | 亚洲另类在线视频 | 国产区高清在线 | 波多野结衣视频一区二区三区 | 久久免费视频播放 | 欧美极品在线播放 | 三日本三级少妇三级99 | 女人18片 | 日韩高清不卡一区二区三区 | 天天操天天舔天天干 | 黄色网在线免费观看 | 久久婷婷开心 | 超碰在线资源 | 91日韩精品一区 | 亚洲一区二区观看 | 久久中文字幕在线视频 | 在线观看免费成人 | 国产成人亚洲在线电影 | 外国av网 | 亚洲日本在线视频观看 | 玖玖爱国产在线 | 在线精品视频免费播放 | 天天干天天搞天天射 | 超碰在线观看99 | 天天草夜夜 | 欧美精品三级在线观看 | 亚洲精品乱码久久久久久蜜桃欧美 | 精品久久福利 | 久久久国产成人 | 中文字幕av在线免费 | 91亚洲视频在线观看 | 亚洲精品久久久蜜桃直播 | 免费高清无人区完整版 | 精品96久久久久久中文字幕无 | 精品国产一区二区三区久久久蜜臀 | 国产99色| av日韩中文 | 国产一区二区在线播放 | 欧美成人tv| 99久久精品免费看国产一区二区三区 | 亚洲免费av网站 | 成人中心免费视频 | 国产精品一区二区三区观看 | 久久激情影院 | 国产精品久久久久久久av电影 | 亚洲电影影音先锋 | 国产精品永久在线 | 999日韩| 午夜神马福利 | 色综合天天射 | 蜜桃视频在线视频 | 在线观看a视频 | 天天操 夜夜操 | sesese图片 | 日本久久电影 | 欧美成人久久 | 久久国产手机看片 | 最近能播放的中文字幕 | 九九日九九操 | 三级av在线| 色姑娘综合 | 色婷婷狠狠干 | 色多多视频在线观看 | 日日爱夜夜爱 | www日韩视频 | 91av在线电影 | 国产视频一区精品 | 国产无套一区二区三区久久 | 久久综合久久久 | 成年人电影免费在线观看 | 九九综合久久 | 亚洲理论电影 | 奇米影视在线99精品 | 欧美片网站yy| 国产精品国产亚洲精品看不卡 | 香蕉久草 | 日韩av免费大片 | 九9热这里真品2 | 五月天av在线 | 亚洲精品88欧美一区二区 | 国产男女爽爽爽免费视频 | 91成人免费观看视频 | 久久婷婷一区 | 国产91全国探花系列在线播放 | 在线观看日韩专区 | 色欧美综合 | 亚洲美女视频在线 | 国产黄a三级三级三级三级三级 | 这里只有精品视频在线观看 | 国产日韩欧美在线一区 | 99精品国产福利在线观看免费 | 福利电影一区二区 | 国产成人一区二区三区影院在线 | 亚洲精品视频一 | 又黄又爽又刺激 | 麻豆视频国产在线观看 | 中文字幕国语官网在线视频 | 视频一区在线播放 | 久久图 | 成人黄色短片 | 中文字幕乱码在线播放 | 欧美一进一出抽搐大尺度视频 | 亚洲免费国产视频 | 日韩在线观看高清 | 久草在线电影网 | 五月激情久久久 | 特级毛片爽www免费版 | 久久久片 | 在线观看免费av网站 | 国产99一区二区 | 夜夜躁狠狠躁日日躁 | 国产成人精品午夜在线播放 | 国产香蕉97碰碰久久人人 | 国产五月色婷婷六月丁香视频 | 黄色av网站在线免费观看 | 毛片无卡免费无播放器 | 久久看片网站 | 色小说av | 色婷婷精品 | 97在线观看视频免费 | 国产精国产精品 | 成人在线视频在线观看 | 天天摸天天干天天操天天射 | av成人免费在线 | 日韩资源在线观看 | h动漫中文字幕 | a v在线观看 | 久久美女高清视频 | 91av视频导航 | 久久精品美女视频 | 国产亚洲va综合人人澡精品 | 国产精品永久免费 | 国产精品美女久久久久久久久 | 国产第一页在线播放 | 久久夜夜操 | 免费色网 | 日韩激情三级 | 一区二区不卡在线观看 | 欧美一级日韩三级 | 国产福利一区二区三区在线观看 | 免费看色网站 | 99久久婷婷国产 | 99视频精品 | 国产夫妻av在线 | 91在线播放视频 | 国产成人av一区二区三区在线观看 | 91干干干 | h动漫中文字幕 | 日韩va欧美va亚洲va久久 | 最新日韩在线 | 中文字幕电影一区 | 国产午夜精品福利视频 | 美女视频黄免费的久久 | 午夜精品一二区 | 日韩精品免费一区二区 | 国产日韩精品视频 | 国产一二三四在线观看视频 | 免费在线观看一级片 | 成人免费一区二区三区在线观看 | 国内免费的中文字幕 | 免费视频 你懂的 | 日韩免费在线播放 | 欧美久久久影院 | 成人性生交大片免费看中文网站 | 人人干网 | 中文字幕在线观看视频一区二区三区 | 丁香六月婷| 免费国产在线观看 | 在线中文字幕播放 | 欧美性极品xxxx做受 | 天天玩夜夜操 | 超碰人人91| 久草在线手机视频 | 怡红院av久久久久久久 | 久久综合婷婷国产二区高清 | 免费情趣视频 | 日韩电影中文字幕在线观看 | 久久免费看毛片 | 国产精品九九九九九九 | 天天激情站 | 91av播放| 97成人精品视频在线播放 | 99久久er热在这里只有精品66 | 一区二区三区观看 | 热re99久久精品国产66热 | av免费观看高清 | 99免费看片 | 日韩精品视| 国产精品精品久久久久久 | 国产分类视频 | 日韩在线中文字幕 | 人人搞人人爽 | 久久久久国产一区二区三区四区 | 国产黄色美女 | 亚洲综合在线视频 | 久久综合色综合88 | 成人一区二区三区在线 | 欧洲在线免费视频 | 性日韩欧美在线视频 | 亚洲成av人片一区二区梦乃 | 日韩一区二区三 | 欧美一区二区三区在线视频观看 | 精品成人a区在线观看 | 国产性xxxx | 日韩在线免费播放 | 人人藻人人澡人人爽 | 97色在线视频 | 国产高清不卡av | 在线国产能看的 | 一区二区三区在线观看中文字幕 | 国产精品mv | 精品国产乱码 | 91丨九色丨91啦蝌蚪老版 | 麻豆成人精品 | 97色噜噜 | 日韩av中文| 国产精品国产亚洲精品看不卡 | 日韩成人邪恶影片 | 婷婷色网 | 天天操天天射天天爱 | 国产精品字幕 | 天天操狠狠操夜夜操 | 久久黄色网址 | 狠狠狠狠狠狠操 | 蜜桃视频精品 | 99精品久久久久 | 一区二区三区免费在线观看视频 | 中文字幕免费观看全部电影 | 亚洲一区二区三区四区精品 | 日韩av视屏在线观看 | 免费视频一区 | 国产亚洲婷婷免费 | 国产精品成人免费精品自在线观看 | 日本中文在线播放 | 免费精品视频在线观看 | 91在线视频免费91 | 在线观看av网 | 国产69久久精品成人看 | 99久久精品免费一区 | 96国产精品视频 | 欧美成人理伦片 | 91亚色视频在线观看 | 亚洲欧美乱综合图片区小说区 | 国产不卡一二三区 | 久久99热精品| 人人揉人人揉人人揉人人揉97 | 免费亚洲精品视频 | 日本色小说视频 | 中文字幕在线久一本久 | 免费av网址大全 | 国产精品永久在线 | 国产精品免费不卡 | 精品亚洲免费 | 中文字幕在线播放第一页 | 日韩三级av | 国产亚洲精品免费 | 高清不卡毛片 | 久久久蜜桃一区二区 | 国内外成人在线视频 | 91中文字幕永久在线 | 五月情婷婷 | 国产一区二区在线免费播放 | 久久精品影片 | 国产最新在线视频 | 97视频资源 | 久久视频国产精品免费视频在线 | 97国产精品亚洲精品 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 日韩精品欧美精品 | 97视频入口免费观看 | 正在播放国产精品 | 国产91丝袜在线播放动漫 | 五月婷婷综合网 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 99久久影视 | 欧美成人黄色 | 青草视频在线播放 | 欧美日韩精品在线观看视频 | 欧美日韩久久一区 | 国内精品视频在线播放 | 国产私拍在线 | 色五婷婷| 中日韩在线 | 91在线播放综合 | 亚洲精品成人 | 中文字幕一区二区三区视频 | 少妇高潮冒白浆 | 四川妇女搡bbbb搡bbbb搡 | 在线高清 | 成 人 黄 色 视频播放1 | 最近中文字幕在线 | 国产日韩在线视频 | 91精品国产91久久久久福利 | 久久久久久久久久免费 | 成人网在线免费视频 | 亚洲欧洲精品久久 | 免费a v在线| 国产手机免费视频 | 深爱激情亚洲 | 草久久久久久久 | 五月天久久久 | 中文字幕资源在线观看 | 国产一级高清视频 | 美女国产网站 | 日韩免费av在线 | 久久久精品欧美一区二区免费 | 国产午夜精品av一区二区 | 免费观看的av网站 | 久热色超碰 | 少妇18xxxx性xxxx片 | 69精品人人人人 | 97成人在线视频 | 国产99久久久国产精品成人免费 | 日本激情动作片免费看 | 亚洲三级网 | 日本丰满少妇免费一区 | 国产一级免费视频 | 天堂在线一区二区 | 黄色软件在线观看免费 | 日韩av免费观看网站 | 人人澡人人爽欧一区 | av在线免费观看网站 | 91大片网站| 亚洲精品男人天堂 | 国产视频资源 | 国产美腿白丝袜足在线av | 黄色av电影免费观看 | 狠狠色丁香久久婷婷综合_中 | 久久与婷婷 | av在线网站大全 | 成人久久18免费网站图片 | 国产黄色免费电影 | 狠狠操夜夜 | a黄色大片 | 婷婷5月色| 爱av在线网 | 99在线热播精品免费99热 | 97国产大学生情侣酒店的特点 | av片在线看 | 在线黄色毛片 | 波多野结衣久久资源 | 日本韩国欧美在线观看 | 久久精品视频在线免费观看 | 97人人添人澡人人爽超碰动图 | 欧美午夜寂寞影院 | 欧美一区二区在线免费观看 | 亚洲精品美女久久久久 | 免费精品人在线二线三线 | 亚洲美女免费精品视频在线观看 | 五月婷婷欧美视频 | 三级黄在线 | www.av在线播放 | 日韩免费视频一区二区 | 成人h视频在线 | 国产精品视频免费观看 | 伊人色**天天综合婷婷 | 日韩系列在线观看 | 久久久伦理 | 久久国产精品一国产精品 | 91亚洲精品乱码久久久久久蜜桃 | 狠狠躁夜夜躁人人爽超碰97香蕉 | av网站大全免费 | 久国产在线播放 | 五月天婷婷免费视频 | 精品视频97 | 九九九九精品九九九九 | 狠狠干美女 | 国产黄色片一级三级 | 97激情影院| 国产麻豆精品免费视频 | 久久国产视屏 | 中文国产成人精品久久一 | 精品一区在线 | 日本美女xx | 精品视频久久久 | 亚洲欧美日韩精品久久久 | 国产资源在线播放 | 久久免费视频8 | 国产91在线免费视频 | 国产一级性生活视频 | 天堂av在线网站 | 国产在线观看你懂得 | 久久免费视频8 | 99久久精品日本一区二区免费 | 91精品免费在线视频 | 麻花豆传媒mv在线观看网站 | 亚洲精品ww | 日韩欧美在线观看 | 视频一区二区视频 | 国产黄色片在线免费观看 | 久久热亚洲 | 亚洲资源一区 | 婷婷色六月天 | 99福利影院 | av天天澡天天爽天天av | 狠狠躁夜夜躁人人爽视频 | 亚洲精品97 | 日日夜夜人人精品 | 女人18片毛片90分钟 | 亚洲做受高潮欧美裸体 | 久久久久国| 欧美大荫蒂xxx | 日韩免费在线观看网站 | 日韩一级理论片 | 亚洲高清色综合 | 精品一二三四在线 | 久久国产精品一区二区三区 | 亚洲精品理论片 | 国产精品久久久久久久久大全 | 在线色亚洲 | 亚州成人av在线 | 亚洲天堂精品视频在线观看 | 国产精品青草综合久久久久99 | 婷婷色av| 国产精品美女免费视频 | 久久精品久久精品久久精品 | 99一区二区三区 | 97超碰超碰久久福利超碰 | 在线观看视频一区二区三区 | 久久视频国产精品免费视频在线 | 欧美日韩免费观看一区二区三区 | 亚洲精品午夜国产va久久成人 | 不卡av电影在线观看 | 久久免费久久 | 国产99久久久精品 | 国产第页 | 波多野结衣精品 | 久久欧洲视频 | 国产r级在线观看 | .国产精品成人自产拍在线观看6 | 国产一二三四在线观看视频 | 日韩免费在线观看网站 | 国产一区高清在线 | bbbb操bbbb| 国产精品99久久久精品免费观看 | 香蕉视频国产在线 | 免费观看黄色av | 日本精油按摩3 | 丁香激情综合国产 | 国产精品1区2区3区在线观看 | 最近免费中文视频 | 伊人久久国产精品 | 欧美污在线观看 | 欧美日韩中文字幕在线视频 | 国产福利精品视频 | 日韩欧美视频 | 黄色中文字幕 | 日韩精品一区二区三区免费观看 | 国产精品理论在线观看 | 97精品一区| 国产一区自拍视频 | 天天操夜操视频 | 久久婷亚洲五月一区天天躁 | 天天操夜| 黄色成人av| 日韩av电影免费在线观看 | 永久免费精品视频 | 久久精品在线 | 日本中文字幕网 | 天天操天操 | 日韩欧美不卡 | 日韩精品在线免费播放 | 国产精品久久久久久久久久不蜜月 | 激情视频在线观看网址 | 国产在线欧美 | av福利网址导航 | 伊人狠狠操 | 二区在线播放 | 精品福利av | 久草在线播放视频 | 黄色片免费在线 | 国产成人一区三区 | 麻豆91视频 | 在线国产高清 | 久久激五月天综合精品 | 麻豆传媒视频在线播放 | 97人人模人人爽人人少妇 | 天海翼一区二区三区免费 | 久草视频在线观 | 成人91在线观看 | 日韩aⅴ视频 | 成人h动漫精品一区二 | 最新成人在线 | 国产精品免费不卡 | 精品一区二区免费视频 | 久久艹在线观看 | 国内精品久久久久 | 在线观看岛国 | 婷婷五综合| 国产成人精品一区二区三区免费 | 天天干,天天操 | 五月婷婷av在线 | 久久公开免费视频 | 日日干,天天干 | 最新国产精品亚洲 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲爱爱视频 | 欧美一区免费观看 | 国产精品一区二区三区99 | 婷婷在线五月 | 在线成人免费电影 | 2024av| 亚洲国内精品在线 | 日韩在线观看不卡 | 国产成人精品电影久久久 | 久草9视频 | 久久精品毛片 | 日本高清久久久 | 综合在线观看 | 日韩中文字幕免费视频 | 五月婷在线观看 | 成人av免费 | 日韩在线观看小视频 | 免费观看91视频大全 | 国产精品久久久av久久久 | 久草在线99 | 亚洲婷婷在线 | 国产视频18 | 国产精品久久久久久久久久了 | 中文字幕中文字幕在线一区 | 欧美精品久久久久久久免费 | 亚洲成av | 999精品网 | 欧美黑人性爽 | 五月天激情婷婷 | 免费视频91蜜桃 | 精品视频在线播放 | 在线免费观看视频你懂的 | 免费中文字幕视频 | 精品五月天 | 不卡的av在线播放 | 精品色999| 久久天天躁狠狠躁亚洲综合公司 | 在线黄色av | 91人人澡人人爽 | 国产精品大片 | 国产精品情侣视频 | 国产日韩欧美视频在线观看 | 91av原创 | 国产在线免费观看 | 久草免费看 | 久久网站最新地址 | 99麻豆久久久国产精品免费 | 国产精品久久久视频 | 天天操夜夜操国产精品 | 国语精品久久 | 午夜影视av| 国产高清在线精品 | 欧美综合干 | 日韩伦理一区二区三区av在线 | 亚洲国产欧美在线人成大黄瓜 | 中文字幕第一 | 久久婷亚洲五月一区天天躁 | 在线日本看片免费人成视久网 | 超碰在线最新地址 | 日韩精品国产一区 | 久久视频在线看 | 亚洲亚洲精品在线观看 | 免费麻豆视频 | 97视频入口免费观看 | 午夜精品久久久久久久久久 | 高清不卡一区二区三区 | 香蕉在线视频观看 | 中文在线a√在线 | 色就是色综合 | 天天色中文 | 日韩欧美综合 | 欧美ⅹxxxxxx | 色综合久久综合 | 国产一区欧美日韩 | 国产特级毛片aaaaaa高清 | 欧美一区二区精美视频 | 日日夜夜天天久久 | 一区二区三区动漫 | 日韩午夜av电影 | 中文视频在线播放 | 日本精品va在线观看 | 免费人做人爱www的视 | 国产亚洲资源 | 亚洲精品成人在线 | 玖玖视频精品 | 97精品国产97久久久久久久久久久久 | 毛片网站在线 | 日韩三级.com | 久草视频在线免费 | 狠狠操狠狠操 | 国产小视频在线免费观看 | 国产精品刺激对白麻豆99 | 99这里只有久久精品视频 | 精品96久久久久久中文字幕无 | 操久在线 | 久久亚洲欧美日韩精品专区 | 亚洲国产一二三 | 综合网在线视频 | 黄色一区二区在线观看 | 天天夜夜亚洲 | 日日摸日日碰 | 最近中文字幕国语免费高清6 | 在线成人中文字幕 | 91精品麻豆 | 在线一二三区 | www178ccom视频在线 | 久久国产精品二国产精品中国洋人 | 欧美在线观看视频免费 | 五月婷婷丁香色 | 国产精品永久久久久久久久久 | 亚洲乱码精品久久久 | 国产精品一区二区在线观看免费 | 手机色站 | 91精品国产99久久久久久红楼 | 99久久久成人国产精品 | 国产特级毛片aaaaaa毛片 | 日本精品一区二区在线观看 | 久久综合狠狠综合久久综合88 | 免费人成网ww44kk44 | 亚洲性xxxx| 国产精品福利无圣光在线一区 | 福利一区二区 | 国产精品久久久久婷婷 | 亚洲日韩欧美一区二区在线 | 激情五月开心 | 99国产在线视频 | 中文字幕在线中文 | 日韩欧美一区二区不卡 | 免费国产一区二区 | 99中文视频在线 | 久久久鲁| 精品久久久久免费极品大片 | 99久久99久久综合 | 国产专区视频在线 | 麻豆国产精品永久免费视频 | 青青草在久久免费久久免费 | 日韩有码欧美 | 国产精品99免费看 | 最近中文字幕免费观看 | 亚洲一区在线看 | 国产成人一区二区三区在线观看 | www.久久色.com | 视频在线99re | 亚州中文av | 亚洲精品视频第一页 | 欧美午夜剧场 | 国产精品久久久久久久久久久久午 | 国产亚洲精品女人久久久久久 | 97爱爱爱 | 91av视频在线播放 | 中文字幕永久在线 | 国产精品18久久久久久久网站 | 黄视频色网站 | 国产字幕在线播放 | 日韩av不卡播放 | 六月丁香婷婷在线 | 国产精品九九热 | 国产视频九色蝌蚪 | 9797在线看片亚洲精品 | 国产一级二级在线观看 | 久久艹影院 | 精品一区av | 五月天久久综合 | 久久久久久久久久久免费视频 | 日本亚洲国产 | 久草青青在线观看 | 五月激情姐姐 | 久久字幕精品一区 | 久久久久女人精品毛片九一 | 亚洲极色 | 国产亚洲精品v | 999在线观看视频 | 五月激情五月激情 | 丁香午夜| 国产亚洲精品久久久久5区 成人h电影在线观看 | 69国产精品成人在线播放 | 亚洲精品成人av在线 | 亚洲高清视频在线播放 | 久久久亚洲国产精品麻豆综合天堂 | 日韩欧美成 | 九九热在线观看 | 91久久精品日日躁夜夜躁国产 | 日韩不卡高清视频 | 丁香婷婷基地 | 午夜三级福利 | 成人黄色电影在线观看 | 久久er99热精品一区二区三区 | 色资源网免费观看视频 | 亚洲精品三级 | 日韩网站在线播放 | 亚洲国产精品电影 | 蜜臀久久99精品久久久酒店新书 | 99中文字幕在线观看 | 96av麻豆蜜桃一区二区 | 欧美精品乱码久久久久 | 日韩激情第一页 | 国产黄色片免费观看 | 国产免费亚洲高清 | 亚洲日韩中文字幕 | 99这里有精品 | 欧美精品久久久久久久久久白贞 | 999热线在线观看 | 中文字幕免费成人 | 中文在线中文a | 久久国产精品免费一区 | 亚洲五月 | 狠狠色丁香婷婷综合 | 久草在线视频免费资源观看 | 色91在线| 成人a视频 | 高潮毛片无遮挡高清免费 | 久操视频在线免费看 | 丁香六月婷婷 | 91精品久久久久久粉嫩 | 亚洲aⅴ在线观看 | 激情小说网站亚洲综合网 | 五月天国产| 美女在线免费视频 | 国产区久久 | 日韩在线视 | 综合色在线 | 国产理论一区二区三区 | 国产麻豆精品在线观看 | 91麻豆操| 狠狠躁日日躁狂躁夜夜躁av | 日日夜夜网 | 99热超碰在线 | 91在线免费观看网站 | 日韩国产精品一区 | 久久深夜福利免费观看 | 久久精品99国产精品亚洲最刺激 | 天天干天天做天天操 | 日韩精品久久中文字幕 | 久久99国产精品久久99 |