精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

太漂亮了 ! 輸出好看的表格,就用這個 Python 庫!

開發 后端
因為信息是展現在命令行中的,眾所周知,命令行展現復雜的文本看起來著實累人,于是就想著能像表格那樣展示,那看起來就舒服多了。

 # 1. 前言

最近在用 Python 寫一個小工具,這個工具主要就是用來管理各種資源的信息,比如阿里云的 ECS 等信息,因為我工作的電腦使用的是 LINUX,所以就想著用 python 寫一個命令行的管理工具,基本的功能就是同步阿里云的資源的信息到數據庫,然后可以使用命令行查詢。

因為信息是展現在命令行中的,眾所周知,命令行展現復雜的文本看起來著實累人,于是就想著能像表格那樣展示,那看起來就舒服多了。

prettytable 庫就是這么一個工具,prettytable 可以打印出美觀的表格,并且對中文支持相當好(如果有試圖自己實現打印表格,你就應該知道處理中文是多么的麻煩)

# 2. 安裝

prettytable 并非 python 的內置庫,通過 pip install prettytable即可安裝。

# 3. 示例

我們先來看一個示例: 

  1. #!/usr/bin/python  
  2. #**coding:utf-8**  
  3. import sys  
  4. from prettytable import PrettyTable  
  5. reload(sys)  
  6. sys.setdefaultencoding('utf8')  
  7. table = PrettyTable(['編號','云編號','名稱','IP地址'])  
  8. table.add_row(['1','server01','服務器01','172.16.0.1'])  
  9. table.add_row(['2','server02','服務器02','172.16.0.2'])  
  10. table.add_row(['3','server03','服務器03','172.16.0.3'])  
  11. table.add_row(['4','server04','服務器04','172.16.0.4'])  
  12. table.add_row(['5','server05','服務器05','172.16.0.5'])  
  13. table.add_row(['6','server06','服務器06','172.16.0.6'])  
  14. table.add_row(['7','server07','服務器07','172.16.0.7'])  
  15. table.add_row(['8','server08','服務器08','172.16.0.8'])  
  16. table.add_row(['9','server09','服務器09','172.16.0.9'])  
  17. print(table) 

以上示例運行結果如下: 

  1. linuxops@deepin:~$ python p.py  
  2. +------+----------+----------+------------+  
  3. | 編號 |  云編號  |   名稱   |   IP地址   |  
  4. +------+----------+----------+------------+  
  5. |  1   | server01 | 服務器01 | 172.16.0.1 |  
  6. |  2   | server02 | 服務器02 | 172.16.0.2 |  
  7. |  3   | server03 | 服務器03 | 172.16.0.3 |  
  8. |  4   | server04 | 服務器04 | 172.16.0.4 |  
  9. |  5   | server05 | 服務器05 | 172.16.0.5 |  
  10. |  6   | server06 | 服務器06 | 172.16.0.6 |  
  11. |  7   | server07 | 服務器07 | 172.16.0.7 |  
  12. |  8   | server08 | 服務器08 | 172.16.0.8 |  
  13. |  9   | server09 | 服務器09 | 172.16.0.9 |  
  14. +------+----------+----------+------------+ 

在以上的示例中,我們通過form導入了表格庫。table實例化了一個表格庫,并且添加了['編號','云編號','名稱','IP地址']為表頭,如果沒有添加表頭,那么會以默認的Field+編號顯示,例如: 

  1. +---------+----------+----------+------------+  
  2. | Field 1 | Field 2  | Field 3  |  Field 4   |  
  3. +---------+----------+----------+------------+ 

所以為更直觀看出每一列的意義,還是要添加表頭的。

# 4. 添加數據

prettytable提供了多種的添加數據的方式,最常用的應該就是按行按列添加數據了。

按行添加數據 table.add_row

在上面簡單的示例中,我們就是按行添加數據的。

添加的數據必須要是列表的形式,而且數據的列表長度要和表頭的長度一樣。在實際的使用中,我們應該要關注到添加的數據是否和表頭對應,這一點很重要。

按列添加數據 table.add_column()

看下面的示例: 

  1. #!/usr/bin/python  
  2. #**coding:utf-8**  
  3. import sys  
  4. from prettytable import PrettyTable  
  5. reload(sys)  
  6. sys.setdefaultencoding('utf8')  
  7. table = PrettyTable()  
  8. table.add_column('項目', ['編號','云編號','名稱','IP地址'])  
  9. table.add_column('值', ['1','server01','服務器01','172.16.0.1'])  
  10. print(table) 

運行結果如下: 

  1. +-------+--------+------------+  
  2. | index | 項目 |    值     |  
  3. +-------+--------+------------+  
  4. |   1   |  編號  |     1      |  
  5. |   2   | 云編號 |  server01  | 
  6. |   3   |  名稱  |  服務器01   |  
  7. |   4   | IP地址 | 172.16.0.1 |  
  8. +-------+--------+------------+ 

以上示例中,我們通過add_column來按列添加數據,按列添加數據不需要在實例化表格的時候制定表頭,它的表頭是在添加列的時候指定的。

table.add_column('項目', ['編號','云編號','名稱','IP地址']) 這一行代碼為例,項目指定了這個列的表頭名為"項目",['編號','云編號','名稱','IP地址']為列的值,同樣為列表。

 從csv文件添加數據

PrettyTable不僅提供了手動按行按列添加數據,也支持直接從csv文件中讀取數據。 

  1. #!/usr/bin/python  
  2. #**coding:utf-8**  
  3. import sys  
  4. from prettytable import PrettyTable  
  5. from prettytable import from_csv  
  6. reload(sys)  
  7. sys.setdefaultencoding('utf8')  
  8. table = PrettyTable()  
  9. fp = open("res.csv", "r")  
  10. table = from_csv(fp)  
  11. print(table)  
  12. fp.close() 

如果要讀取cvs文件數據,必須要先導入from_csv,否則無法運行。上面的示例運行結果如下:

PS:csv 文件不能通過 xls 直接重命名得到,會報錯。如果是 xls 文件,請用另存為 csv 獲得 csv 文件

 從sql查詢值添加

從數據庫查詢出來的數據可以直接導入到表格打印,下面的例子使用了sqlite3,如果使用的是mysql也是一樣的,只要能查詢到數據就能導入到表格中。 

  1. #!/usr/bin/python  
  2. #**coding:utf-8**  
  3. import sys  
  4. from prettytable import PrettyTable  
  5. from prettytable import from_db_cursor  
  6. import sqlite3  
  7. reload(sys)  
  8. sys.setdefaultencoding('utf8')  
  9. conn = sqlite3.connect("/tmp/aliyun.db")  
  10. cur = conn.cursor()  
  11. cur.execute("SELECT * FROM res")  
  12. table = from_db_cursor(cur)  
  13. print(table) 

運行結果如下: 

  1. +------+----------+----------+------------+  
  2. | 編號 |  云編號  |   名稱   |   IP地址   |  
  3. +------+----------+----------+------------+  
  4. |  1   | server01 | 服務器01 | 172.16.0.1 |  
  5. |  2   | server02 | 服務器02 | 172.16.0.2 |  
  6. |  3   | server03 | 服務器03 | 172.16.0.3 |  
  7. |  4   | server04 | 服務器04 | 172.16.0.4 |  
  8. |  5   | server05 | 服務器05 | 172.16.0.5 |  
  9. |  6   | server06 | 服務器06 | 172.16.0.6 |  
  10. |  7   | server07 | 服務器07 | 172.16.0.7 |  
  11. |  8   | server08 | 服務器08 | 172.16.0.8 |  
  12. |  9   | server09 | 服務器09 | 172.16.0.9 |  
  13. +------+----------+----------+------------+ 

 從HTML導入數據

支持從html的表格中導入,請看下面這個例子: 

  1. #!/usr/bin/python  
  2. #**coding:utf-8**  
  3. import sys  
  4. from prettytable import PrettyTable  
  5. from prettytable import from_html  
  6. reload(sys)  
  7. sys.setdefaultencoding('utf8')  
  8. html_string='''<table>  
  9. <tr>  
  10. <th>編號</th>  
  11. <th>云編號</th>  
  12. <th>名稱</th>  
  13. <th>IP地址</th>  
  14. </tr>  
  15. <tr>  
  16. <td>1</td>  
  17. <td>server01</td>  
  18. <td>服務器01</td>  
  19. <td>172.16.0.1</td>  
  20. </tr>  
  21. <tr>  
  22. <td>2</td>  
  23. <td>server02</td>  
  24. <td>服務器02</td>  
  25. <td>172.16.0.2</td>  
  26. </tr>  
  27. </table>'''  
  28. table = from_html(html_string)  
  29. print(table[0]) 

運行結果如下: 

  1. +------+----------+----------+------------+  
  2. | 編號 |  云編號  |   名稱   |   IP地址   |  
  3. +------+----------+----------+------------+ 
  4. |  1   | server01 | 服務器01 | 172.16.0.1 |  
  5. |  2   | server02 | 服務器02 | 172.16.0.2 |  
  6. +------+----------+----------+------------+ 

如上示例中,我們可以導入html的表格,但是不一樣的地方是print語句,使用html表格導入數據的時候print的必須是列表中的第一個元素,否則有可能會報[<prettytable.PrettyTable object at 0x7fa87feba590>]這樣的錯誤。

這是因為table并不是PrettyTable對象,而是包含單個PrettyTable對象的列表,它通過解析html而來,所以無法直接打印table,而需要打印table[0]

# 5. 表格輸出格式

正如支持多種輸入一樣,表格的輸出也支持多種格式,我們在上面中的例子中已經使用了print的方式輸出,這是一種常用的輸出方式。

 print

直接通過print打印出表格。這種方式打印出的表格會帶邊框。

 輸出HTML格式的表格

print(table.get_html_string())可以打印出html標簽的表格。

在上面的例子中,使用print(table.get_html_string())會打印出如下結果: 

  1. <table>  
  2.     <tr>  
  3.         <th>編號</th>  
  4.         <th>云編號</th>  
  5.         <th>名稱</th>  
  6.         <th>IP地址</th>  
  7.     </tr>  
  8.     <tr>  
  9.         <td>1</td>  
  10.         <td>server01</td>  
  11.         <td>服務器01</td>  
  12.         <td>172.16.0.1</td>  
  13.     </tr>  
  14.     <tr>  
  15.         <td>2</td>  
  16.         <td>server02</td>  
  17.         <td>服務器02</td>  
  18.         <td>172.16.0.2</td>  
  19.     </tr>  
  20. </table> 

# 6. 選擇性輸出

prettytable在創建表格之后,你依然可以有選擇的輸出某些特定的行.

 輸出指定的列

print table.get_string(fields=["編號", "IP地址"])可以輸出指定的列

 輸出前兩行

通過print(table.get_string(start = 0, end = 2))的可以打印出指定的列,當然start和end參數讓我可以自由控制顯示區間。當然區間中包含start不包含end,是不是很熟悉這樣的用法?

根據輸出指定行列的功能,我們可以同時指定行和列來輸出,這里就不說明了。

 將表格切片

從上面的輸出區間,我們做一個大膽的假設,既然區間包含start不包含end這種規則和切片的一樣,我們可以不可通過切片來生成一個新的表格然后將其打印。

事實上是可以的。 

  1. new_table = table[0:2]  
  2. print(new_table) 

如上代碼段中,我們就可以打印出0到1行共2行的表格,python的切片功能異常強大,配合切片我們可以自由的輸入任意的行。

 輸出排序

有時候我們需要對輸出的表格進行排序,使用print table.get_string(sortby="編號", reversesort=True)就可以對表格進行排序,其中reversesort指定了是否倒序排序,默認為False,即默認正序列排序。

sortby指定了排序的字段。

# 7. 表格的樣式

 內置樣式

通過set_style()可以設置表格樣式,prettytable內置了多種的樣式個人覺得MSWORD_FRIENDLY,PLAIN_COLUMNS,DEFAULT 這三種樣式看起來比較清爽,在終端下顯示表格本來看起就很累,再加上一下花里胡哨的東西看起來就更累。

除了以上推薦的三種樣式以外,還有一種樣式不得不說,那就是RANDOM,這是一種隨機的樣式,每一次打印都會在內置的樣式中隨機選擇一個,比較好玩。

具體內置了幾種樣式,請各位參考官網完整自己嘗試輸出看看。 

  1. #!/usr/bin/python  
  2. #**coding:utf-8**  
  3. import sys  
  4. from prettytable import PrettyTable  
  5. from prettytable import MSWORD_FRIENDLY  
  6. from prettytable import PLAIN_COLUMNS  
  7. from prettytable import RANDOM  
  8. from prettytable import DEFAULT    
  9. reload(sys)  
  10. sys.setdefaultencoding('utf8')  
  11. table = PrettyTable(['編號','云編號','名稱','IP地址'])  
  12. table.add_row(['1','server01','服務器01','172.16.0.1'])  
  13. table.add_row(['3','server03','服務器03','172.16.0.3'])  
  14. table.add_row(['2','server02','服務器02','172.16.0.2'])  
  15. table.add_row(['9','server09','服務器09','172.16.0.9'])  
  16. table.add_row(['4','server04','服務器04','172.16.0.4'])  
  17. table.add_row(['5','server05','服務器05','172.16.0.5'])  
  18. table.add_row(['6','server06','服務器06','172.16.0.6'])  
  19. table.add_row(['8','server08','服務器08','172.16.0.8'])  
  20. table.add_row(['7','server07','服務器07','172.16.0.7'])  
  21. table.set_style(DEFAULT)  
  22. print(table) 

 自定義樣式

除了內置的樣式以外,PrettyTable也提供了用戶自定義,例如對齊方式,數字輸出格式,邊框連接符等等

 設置對齊方式

align提供了用戶設置對齊的方式,值有l,r,c方便代表左對齊,右對齊和居中 如果不設置,默認居中對齊。

 控制邊框樣式

在PrettyTable中,邊框由三個部分組成,橫邊框,豎邊框,和邊框連接符(橫豎交叉的鏈接符號)

如下示例: 

  1. #!/usr/bin/python  
  2. #**coding:utf-8**  
  3. import sys  
  4. from prettytable import PrettyTable  
  5. reload(sys)  
  6. sys.setdefaultencoding('utf8')  
  7. table = PrettyTable(['編號','云編號','名稱','IP地址'])  
  8. table.add_row(['1','server01','服務器01','172.16.0.1'])  
  9. table.add_row(['3','server03','服務器03','172.16.0.3'])  
  10. table.add_row(['2','server02','服務器02','172.16.0.2'])  
  11. table.add_row(['9','server09','服務器09','172.16.0.9'])  
  12. table.add_row(['4','server04','服務器04','172.16.0.4'])  
  13. table.add_row(['5','server05','服務器05','172.16.0.5'])  
  14. table.add_row(['6','server06','服務器06','172.16.0.6'])  
  15. table.add_row(['8','server08','服務器08','172.16.0.8'])  
  16. table.add_row(['7','server07','服務器07','172.16.0.7'])  
  17. table.align[1] = 'l'  
  18. table.border = True  
  19. table.junction_char='$'  
  20. table.horizontal_char = '+'  
  21. table.vertical_char = '%'  
  22. print(table)  
  23. table.border`控制是否顯示邊框,默認是`True 

table.junction_char控制邊框連接符

table.horizontal_char控制橫邊框符號

table.vertical_char控制豎邊框符號

上例運行如下: 

  1. $++++++$++++++++++$++++++++++$++++++++++++$  
  2. % 編號 %  云編號  %   名稱   %   IP地址   %  
  3. $++++++$++++++++++$++++++++++$++++++++++++$  
  4. %  1   % server01 % 服務器01 % 172.16.0.1 %  
  5. %  3   % server03 % 服務器03 % 172.16.0.3 %  
  6. %  2   % server02 % 服務器02 % 172.16.0.2 %  
  7. %  9   % server09 % 服務器09 % 172.16.0.9 %  
  8. %  4   % server04 % 服務器04 % 172.16.0.4 %  
  9. %  5   % server05 % 服務器05 % 172.16.0.5 %  
  10. %  6   % server06 % 服務器06 % 172.16.0.6 %  
  11. %  8   % server08 % 服務器08 % 172.16.0.8 %  
  12. %  7   % server07 % 服務器07 % 172.16.0.7 %  
  13. $++++++$++++++++++$++++++++++$++++++++++++$ 

以上簡單介紹了表格常用的一些樣式設置。更具體的方法可參數請參考官方網站:

https://github.com/jazzband/prettytable 

 

責任編輯:龐桂玉 來源: 菜鳥學Python
相關推薦

2020-03-12 14:40:59

Python表格命令行

2013-08-13 09:19:02

2015-06-25 14:01:39

WPS金山軟件

2023-12-25 12:59:00

PaddleOCR深度學習開發

2021-06-28 10:51:58

PyechartsPython繪圖庫

2021-02-22 09:25:21

Python文本化表格命令

2020-04-08 08:47:04

HBase場景組件

2021-04-24 23:00:43

Windows 10Windows微軟

2020-06-10 11:00:09

Pythonfaker假數據

2021-07-09 05:59:03

Windows 11操作系統WhyNotWin11

2020-11-20 14:16:20

Python開發表格

2020-09-17 16:00:03

Python 開發編程語言

2021-06-10 10:26:03

PythonGUI軟件包

2022-01-26 10:52:21

代碼Python數據庫

2025-08-04 02:00:00

前端圖表庫開發

2020-08-19 08:20:23

Python開發GitHub

2025-09-12 16:44:51

2020-11-27 09:57:11

Python代碼PyPy

2010-05-20 09:45:22

連接MySQL
點贊
收藏

51CTO技術棧公眾號

久久久美女艺术照精彩视频福利播放| 综合伊思人在钱三区| 亚洲欧洲美洲综合色网| 国产精品青青在线观看爽香蕉 | 久久国产免费观看| 一本一道久久a久久| 黄色成人在线播放| 日本精品一区二区| 老熟妇一区二区三区啪啪| 久久亚洲国产| 在线不卡免费欧美| 日韩精品在线中文字幕| 青青草手机在线| 青青青伊人色综合久久| 九九九热精品免费视频观看网站| 成年人小视频在线观看| 欧美大片1688网站| 亚洲精品videosex极品| 久久精品一区二区三区不卡免费视频| 精品人妻一区二区三区潮喷在线| 性欧美欧美巨大69| 日韩激情av在线播放| 日本免费色视频| 精品众筹模特私拍视频| 91丝袜呻吟高潮美腿白嫩在线观看| 国产精品久久久久99| 欧美 日韩 国产 一区二区三区| 久久草在线视频| 欧美日韩视频一区二区| 中文字幕制服丝袜在线| 亚洲精品一区二区三区区别| 久久亚洲精品伦理| 欧美理论电影在线观看| 日本高清www| 亚洲国产91视频| 欧美性生交大片免费| 九九久久九九久久| 国产区高清在线| 成人少妇影院yyyy| 国产日韩av在线播放| 特级西西444www大精品视频免费看| 99久久婷婷这里只有精品| 亚洲美女在线观看| 初高中福利视频网站| 69堂精品视频在线播放| 精品欧美激情精品一区| 久久久99精品视频| 超碰免费97在线观看| 不卡视频在线看| av成人观看| 欧美日韩 一区二区三区| 在线观看的日韩av| 另类色图亚洲色图| 激情无码人妻又粗又大| 久久91麻豆精品一区| 亚洲成色www8888| 亚洲男人天堂2021| 国产亚洲欧美日韩精品一区二区三区| 欧美性猛交99久久久久99按摩| 人妻激情另类乱人伦人妻| 麻豆影院在线| 亚洲欧洲日韩女同| 亚洲国产一区二区三区在线播| 欧美另类自拍| 久久午夜老司机| 免费99视频| 手机看片一区二区| 成人一区二区三区视频在线观看| 亚洲一区中文字幕在线观看| 国产精品九九九九| 精品无码三级在线观看视频| 国产美女主播一区| 一二三四区在线| 麻豆国产欧美一区二区三区| 国产免费久久av| 中文字幕在线播放不卡| 日本在线观看不卡视频| 国产精品热视频| 在线免费观看高清视频| 蜜臀av一区二区三区| 国产一区二区在线免费| 国产又粗又黄又爽视频| 久久97超碰国产精品超碰| 国产在线观看精品| 国产黄色av片| 成人av免费在线播放| 国产欧美一区二区视频| 亚洲欧洲视频在线观看| 国产亚洲女人久久久久毛片| 水蜜桃亚洲精品| 麻豆传媒在线观看| 亚洲精品高清视频在线观看| www.日本少妇| 综合久久2023| 欧美人与性动xxxx| 青青草精品在线| 色婷婷av一区二区三区丝袜美腿| 亚洲最新av在线网站| 1024手机在线视频| 欧美日韩p片| 欧美另类极品videosbest最新版本| 精品在线视频免费| 久久久久久久欧美精品| 国产日韩在线视频| 婷婷伊人综合中文字幕| 国产女人aaa级久久久级 | 欧美残忍xxxx极端| 欧美另类极品videosbestfree| 国产又色又爽又黄的| 日日夜夜操视频| 成人性生交大片免费看中文视频 | 亚洲精品欧美综合四区| 国产 日韩 欧美在线| 日本在线中文字幕一区二区三区| 91精品国产91久久久久久最新毛片| 天堂va欧美va亚洲va老司机| 一区二区三区视频免费观看 | 91亚洲天堂| 欧美午夜xxx| www.污网站| 久久综合欧美| 欧美激情日韩图片| 中文字幕人妻互换av久久| 国产91综合网| 亚洲一区二区三区午夜| 成年人黄色大片在线| 欧美日韩黄色大片| 手机在线观看日韩av| 最近国产精品视频| 欧美激情在线一区| 91亚洲国产成人精品一区| 久久综合九色欧美综合狠狠| 大桥未久一区二区三区| 成人午夜精品| 日韩成人在线视频观看| 国产少妇在线观看| 欧美午夜视频| 亚洲一区二区久久久久久久| a天堂在线资源| 日本91福利区| 天天综合天天综合色| 国内性生活视频| 国产精品亚洲综合在线观看| 亚洲日韩中文字幕在线播放| 国产一区二区播放| 免费观看成人av| 另类视频在线观看+1080p| 激情在线视频播放| 91.麻豆视频| 国产白丝一区二区三区| 日韩主播视频在线| 久久久影院一区二区三区| 色黄网站在线观看| 7878成人国产在线观看| 后入内射无码人妻一区| 奇米一区二区三区| 热re99久久精品国99热蜜月| 日韩大片免费观看| 亚洲精品国产免费| 国产亚洲精品码| 国产成人免费在线观看不卡| 亚洲一区二区在线看| 久久xxx视频| 伊人精品在线观看| 中文字幕二区三区| 国产精品久久久爽爽爽麻豆色哟哟 | 欧美激情在线一区二区三区| 欧在线一二三四区| 日韩激情网站| 欧美中文在线视频| 内衣办公室在线| 在线亚洲免费视频| eeuss中文字幕| 久久超碰97中文字幕| 亚洲欧美综合一区| а天堂中文最新一区二区三区| 亚洲欧美日本另类| www.中文字幕在线观看| 2023国产精品| 那种视频在线观看| 国产精品主播在线观看| 国语对白做受69| 无码国产色欲xxxx视频| 欧美性生交xxxxxdddd| 亚洲最大成人综合网| 9国产精品视频| 免费国产一区二区| 亚洲深夜视频| 中文字幕久久久av一区| 99久久国产热无码精品免费| 亚洲在线视频网站| 国产极品一区二区| 视频在线在亚洲| 熟女视频一区二区三区| xxxx日韩| 国产成人精品电影| 国产精品剧情| 亚洲黄色免费三级| 波多野结衣黄色| 亚洲欧美一区二区三区孕妇| 丰满熟女人妻一区二区三区| 亚洲国产免费| 日韩精品资源| 亚洲一区二区三区在线免费| 欧美专区第一页| 四虎久久免费| 日韩精品一区二区三区蜜臀 | 国产精品亚洲欧美导航| 亚洲妇熟xxxx妇色黄| 亚洲精品自在久久| 中文字幕乱伦视频| 亚洲三级电影网站| 97人妻精品一区二区三区免费| 日韩不卡一二三区| www国产无套内射com| 精品国产乱码久久久久久蜜坠欲下 | 欧美性色欧美a在线播放| 久久精品99国产精| 国产精品色一区二区三区| 国产九九在线视频| 国产一区二区精品| 精品一区二区成人免费视频| 日韩aaa久久蜜桃av| 成人免费观看网址| 欧美大电影免费观看| 欧美成人午夜免费视在线看片 | 92国产精品| 这里只有精品久久| 免费在线超碰| 欧美mv日韩mv| 91丨九色丨丰满| 欧洲激情一区二区| 国产亚洲第一页| 中文乱码免费一区二区| 日韩精品卡通动漫网站| 成人av网址在线| 国产黄色一区二区三区| 久久国产剧场电影| wwwwxxxx日韩| 日韩经典中文字幕一区| 成人免费毛片网| 一二三区不卡| 一本久道久久综合狠狠爱亚洲精品| 亚洲区小说区图片区qvod按摩 | 欧美日韩在线不卡视频| 亚洲小说区图片区| 亚洲国产一区在线| 亚洲国产欧美日韩在线观看第一区| 亚洲自拍偷拍视频| 中文幕av一区二区三区佐山爱| 国产精品日韩在线一区| 国产日韩电影| 秋霞午夜一区二区| 国产伦精品一区二区三区视频金莲| 97超碰色婷婷| 久久青草伊人| 精品中文字幕视频| 韩国av网站在线| 精品亚洲精品福利线在观看| 日本高清视频免费观看| 精品国产乱码久久久久久影片| 国产精品女同一区二区| 91精品国产入口| 国产精品无码免费播放 | 亚洲熟妇国产熟妇肥婆| 国产精品久久久亚洲一区| 成品人视频ww入口| 精品福利电影| av中文字幕av| 亚洲免费二区| 免费看欧美黑人毛片| 精品动漫3d一区二区三区免费| 国产免费黄色小视频| 国产亚洲午夜| 日本不卡在线观看视频| 美女日韩在线中文字幕| av污在线观看| 国内久久精品视频| 欧美一区二区三区影院| 日本美女一区二区三区| 日本黄大片一区二区三区| 精品一区二区三区免费播放| 日本成人在线免费| 北条麻妃一区二区三区| 亚洲成人网在线播放| 欧美高清在线一区二区| 国产精品精品软件男同| 亚洲国产视频一区| 久久精品视频6| 色婷婷av一区二区三区之一色屋| 中文字幕 日韩有码| 欧美一级一区二区| 无码国产色欲xxxx视频| 伊人伊成久久人综合网小说| 黄网站免费在线观看| 精品国产一区二区三区四区在线观看 | 亚洲一级片在线播放| 亚洲特黄一级片| 国产无遮无挡120秒| 欧美视频在线观看免费| 亚洲AV无码成人精品区东京热| 欧美亚洲综合另类| 7799精品视频天天看| 欧美久久久久免费| 日韩性xxxx| 亚洲乱码国产乱码精品精天堂 | 六九午夜精品视频| 91网在线免费观看| 网红女主播少妇精品视频| 亚洲永久一区二区三区在线| 影音国产精品| 黑森林精品导航| 不卡视频在线看| 一级免费黄色录像| 欧美日韩一区二区三区在线免费观看| 中文字幕在线观看国产| 亚洲国产精品va在看黑人| 国内精品一区视频| 欧美裸身视频免费观看| av激情成人网| 97人摸人人澡人人人超一碰| 国产伦精品一区二区三区千人斩 | 欧美精品一区三区在线观看| 亚洲午夜精品一区二区国产| 人妻丰满熟妇av无码区app| 国产成人亚洲精品青草天美 | 国产亚洲欧洲一区高清在线观看| 久久久久久国产免费a片| 午夜视频一区二区三区| 国产人妖一区二区| 国产亚洲视频在线| 韩国精品一区| 国产免费一区二区三区在线观看 | 国产大片在线免费观看| 欧美黄色www| 91精品国产一区二区在线观看| 日本一区二区三区四区高清视频| 亚洲三级国产| 人妻 丝袜美腿 中文字幕| 国产日本欧洲亚洲| 日本三级片在线观看| 日韩你懂的电影在线观看| 男人影院在线观看| 国产精品成人免费视频| 国产欧美啪啪| 国产一区二区网| 成人动漫一区二区在线| 免费在线观看亚洲| 欧美三级视频在线播放| 色哟哟免费在线观看 | 男人午夜免费视频| 日韩av在线免费看| 国产深夜视频在线观看| 国产视色精品亚洲一区二区| 欧美精品99| 国产男女无遮挡猛进猛出| 亚洲婷婷综合色高清在线| 精品国产黄色片| 欧美成人一区二区三区电影| 国产精品igao视频网网址不卡日韩| 亚洲图片都市激情| 韩国精品免费视频| 小向美奈子av| 欧美男男青年gay1069videost | 久久久久久一二三区| 91视频在线视频| 在线成人激情视频| a成人v在线| 亚洲成人网上| 国产精品综合网| 久草国产在线观看| 亚洲精品在线观看视频| 草草在线视频| 日产精品一线二线三线芒果| 日韩有码一区二区三区| 四季av中文字幕| 一本久道中文字幕精品亚洲嫩| 91吃瓜网在线观看| 91久久在线视频| 亚洲天堂男人| xxxx日本免费| 欧美日韩日日摸| 午夜影院免费在线| 国产在线一区二区三区播放| 日韩精品一区第一页| 国产精品18在线| 欧美一二区视频| 免费看电影在线| 秋霞久久久久久一区二区| 久久99精品久久久久久国产越南 | 蜜桃视频在线观看www| 97久久久久久| 欧美日韩有码| 久草福利在线观看| 丁香五六月婷婷久久激情| 巨骚激情综合| 999精品视频一区二区三区| 久久久久久久波多野高潮日日| 国产suv精品一区二区68| 精品久久久久av影院|