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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

Protocol Buffer 基础(Python 版)

發(fā)布時(shí)間:2023/12/16 python 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Protocol Buffer 基础(Python 版) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Protocol Buffer 基礎(chǔ)(Python 版)

翻譯自:https://developers.google.com/protocol-buffers/docs/pythontutorial

需要使用?protocol?buffer 主要分為以下三步:

  • 通過?message?格式定義 .proto?文件
  • 使用?protocol?buffer?編譯器生成 .py?文件(其他語言類似)
  • 使用?Python?protocol?buffer?API?讀寫?messages

本文只是基礎(chǔ)介紹詳細(xì)信息可參考:

  • 詳細(xì)文檔:https://developers.google.com/protocol-buffers/docs/overview
  • 版本下載:https://developers.google.com/protocol-buffers/docs/downloads

protocol?buffer?的優(yōu)勢(shì)

  • Python?內(nèi)置?pickling:不能很好的應(yīng)對(duì) schema?的演進(jìn),而且不能很好的與?C++?或者?Java?程序進(jìn)行數(shù)據(jù)共享
  • 可以自定義一種轉(zhuǎn)換為字符串的方式。雖然其需要編寫編碼和解析的代碼,并且解析需要一定的時(shí)間成本。但因?yàn)槠浜?jiǎn)單靈活特別適合處理非常簡(jiǎn)單的數(shù)據(jù)。
  • XML:XML?由于易讀性并且兼容多種語言而被使用。不過其需要占用相當(dāng)大的存儲(chǔ)空間,同時(shí)編解碼也需要付出大量的時(shí)間成本,最后遍歷?XML?DOM?樹相比于遍歷某個(gè)類也要復(fù)雜的多。

定義?Protocol?格式

這里以一個(gè)地址簿的例子做說明。其中地址簿中包含多個(gè)聯(lián)系人,每個(gè)聯(lián)系人將包含一個(gè)姓名,ID,電子郵箱和聯(lián)系電話。這樣一個(gè)地址簿的 .proto?文件定義如下。這里的例子是以?proto2?為基礎(chǔ),最新的版本為?proto3。

// addressbook.proto syntax = "proto2";package tutorial;message Person {required string name = 1;required int32 id = 2;optional string email = 3;enum PhoneType {MOBILE = 0;HOME = 1;WORK = 2;}message PhoneNumber {required string number = 1;optional PhoneType type = 2 [default = HOME];}repeated PhoneNumber phones = 4; }message AddressBook {repeated Person people = 1; }

.proto?文件首先指定包名,其幫組解決不同項(xiàng)目中可能存在的命名沖突問題。不過由于?Python?通過文件路徑來管理包名。因此這部分內(nèi)容只在非?Python?語言中起作用。

接下來就是 message?的定義。message?提供了很多標(biāo)準(zhǔn)的簡(jiǎn)單數(shù)據(jù)類型,比如?bool, int32, float, double, string。當(dāng)然也可以定義一下復(fù)雜的數(shù)據(jù)結(jié)構(gòu),比如上述程序中,Person?中就包括了?PhoneNumber;同時(shí)?AddressBook?包含了 Person。也可以通過枚舉預(yù)定義變量的取值。

而變量之后的 ‘=1’, '=2'?給出了每個(gè)變量唯一的標(biāo)示。同時(shí),由于 1 - 15?使用的編碼大小比 16?以上的少一個(gè)字節(jié),因此通常將 1 - 15?留給?required?和 repeated?域。同時(shí),由于?repeated?域中的每一個(gè)元素都需要進(jìn)行標(biāo)示的重編碼,因此這一優(yōu)化十分適合?repeated?域。

同時(shí),上面的例子中可以發(fā)現(xiàn)每一個(gè)域都需要一個(gè)如下的修飾符:

  • required:這個(gè)域必須被賦值,如果未被賦值,那么如果序列化一個(gè)這樣的?message?將返回一個(gè)異常,而如果解析一個(gè)未初始化的?message?將會(huì)失敗。除此之外,?required?與?optional?并沒有實(shí)質(zhì)的差別。
  • optional:這個(gè)域的賦值可有可無。如果沒有被賦值,那么默認(rèn)賦值將被使用。對(duì)于簡(jiǎn)單類,我們可以自己指定,比如上例中的?type。同時(shí)每個(gè)簡(jiǎn)單類都提供了一個(gè)系統(tǒng)默認(rèn)的初始值,比如數(shù)值類型(0),字符串(空字符串),邏輯變量(false)。對(duì)于嵌入式?message,默認(rèn)值始終是?message?的默認(rèn)實(shí)例或者原型,其中并沒有設(shè)置其域。如果訪問沒有顯式賦值的域,將總是得到其默認(rèn)值。
  • repeated:這個(gè)可以重復(fù)任意次(包括 0)。重復(fù)值的順序?qū)⒈淮鎯?chǔ)在?protocol buffer?中。repeated?可以被理解為動(dòng)態(tài)數(shù)組。

這里必須提醒一點(diǎn),required?是永久的:因此,在定義域?yàn)?required?的時(shí)候必須十分謹(jǐn)慎,因?yàn)橹笕绻枰薷?#xff0c;那么使用舊程序的使用者將認(rèn)為?message?沒有正確賦值而報(bào)錯(cuò)。同時(shí)?Google?內(nèi)部也就是否需要保留?required?而進(jìn)行討論。好像?protocol?buffer 3?已經(jīng)不再顯式指明這些修飾符了。

編譯?Protocol?Buffers

你可以從以下網(wǎng)站??https://developers.google.com/protocol-buffers/docs/downloads?并遵循說明安裝編譯器。

protoc -I=$SRC_DIR --python_out=$DST_DIR $SRC_DIR/addressbook.proto

參數(shù)說明:

  • $SRC_DIR:應(yīng)用所代碼,如果不提供將使用當(dāng)前路徑
  • $DST_DIR:生成的代碼希望放到哪。由于本例基于?Python,因此使用 --python_out,其他語言類似。
  • 最后是指向 .proto?文件的路徑

這行命令將生成一個(gè)?addressbook_pb2.py?文件。

Protocol?Buffer API

對(duì)于 Java?和?C++,當(dāng)生成?protocol?buffer?代碼時(shí),將直接給出訪問數(shù)據(jù)的代碼,但對(duì)于?Python?并不會(huì)給出。addressbook_pb2.py?包含以下內(nèi)容:

class Person(message.Message):__metaclass__ = reflection.GeneratedProtocolMessageTypeclass PhoneNumber(message.Message):__metaclass__ = reflection.GeneratedProtocolMessageTypeDESCRIPTOR = _PERSON_PHONENUMBERDESCRIPTOR = _PERSONclass AddressBook(message.Message):__metaclass__ = reflection.GeneratedProtocolMessageTypeDESCRIPTOR = _ADDRESSBOOK

每一個(gè)類中重要的信息是?__metaclass__ = reflection.GeneratedProtocolMessageType。具體?Python?metaclasses?如何發(fā)揮功效可能超過了本文的范圍,但你可以把它理解為創(chuàng)建類時(shí)需要使用的模板。在加載時(shí),GeneratedProtocolMessageType?metaclasses?使用特定的描述符產(chǎn)生所有你需要的?Python?方法并將它們添加到對(duì)應(yīng)的類中。之后就可以在你的代碼中使用完全填充好的類了。

比如本文之前使用過的例子,我們就可以通過如下方式使用?message?中定義的?Person?類。

import addressbook_pb2 person = addressbook_pb2.Person() person.id = 1234 person.name = "John Doe" person.email = "jdoe@example.com" phone = person.phones.add() phone.number = "555-4321" phone.type = addressbook_pb2.Person.HOME

上述賦值過程并不是簡(jiǎn)單的增加類中的成員,如果你視圖賦值一個(gè)沒有的變量將返回?AttributeError,而如果你分配了一個(gè)錯(cuò)誤的類型,那么將返回?TypeError。如果在賦值之前訪問一個(gè)變量,將返回其默認(rèn)值。

person.no_such_field = 1 # raises AttributeError person.id = "1234" # raises TypeError

枚舉類

枚舉類由元類擴(kuò)展為一組具有整數(shù)值的符號(hào)常量。比如上述例子中?addressbook_pb2.Person.WORK?有一個(gè)值 2.

標(biāo)準(zhǔn)?message?方法

每一個(gè)?message?還包含某些函數(shù)讓你可以檢查或者操作整個(gè)?message。

  • IsInitialized():檢測(cè)所有的?required?是否被賦值
  • __str__():返回一個(gè)可讀的?message?表示,通常用于調(diào)試中?str(message)和print(message)

解析與序列化

  • SerializeToString():序列化一個(gè)?message?并返回字符串。返回的字節(jié)是二值的并不是文本,只能使用?str?類型進(jìn)行存儲(chǔ)
  • ParseFromString(data):從給定的字符串中解析?message

其他的解析和序列化函數(shù)可以參考:https://developers.google.com/protocol-buffers/docs/reference/python/google.protobuf.message.Message-class

需要注意的是基于?O-O?設(shè)計(jì)的:Protocol?Buffer?本質(zhì)上是?dumb?的數(shù)據(jù)存儲(chǔ)器,這點(diǎn)有點(diǎn)類似于?C?語言的結(jié)構(gòu)體,這表明其并不能很好的兼容對(duì)象模型。如果你想要增加更豐富的行為到一個(gè)擴(kuò)展類中,最好的方式是在應(yīng)用類中封裝擴(kuò)展的?protocol?buffer?類。如果你是復(fù)用另一個(gè)項(xiàng)目中的?protocol?buffer?而無法控制 .proto?文件的設(shè)計(jì),那么封裝也是一個(gè)很好的方式。通過封裝,可以更好地適應(yīng)具體應(yīng)用的特定環(huán)境,比如隱藏某些數(shù)據(jù)和方法,開放某些方便的函數(shù)。但你絕對(duì)不要通過繼承的方式來擴(kuò)展類。這將破壞內(nèi)部的結(jié)構(gòu)并不是一個(gè)好的面向?qū)ο蟮姆绞健?/span>

message?讀寫

#! /usr/bin/pythonimport addressbook_pb2 import sys# This function fills in a Person message based on user input. def PromptForAddress(person):person.id = int(raw_input("Enter person ID number: "))person.name = raw_input("Enter name: ")email = raw_input("Enter email address (blank for none): ")if email != "":person.email = emailwhile True:number = raw_input("Enter a phone number (or leave blank to finish): ")if number == "":breakphone_number = person.phones.add()phone_number.number = numbertype = raw_input("Is this a mobile, home, or work phone? ")if type == "mobile":phone_number.type = addressbook_pb2.Person.MOBILEelif type == "home":phone_number.type = addressbook_pb2.Person.HOMEelif type == "work":phone_number.type = addressbook_pb2.Person.WORKelse:print "Unknown phone type; leaving as default value."# Main procedure: Reads the entire address book from a file, # adds one person based on user input, then writes it back out to the same # file. if len(sys.argv) != 2:print "Usage:", sys.argv[0], "ADDRESS_BOOK_FILE"sys.exit(-1)address_book = addressbook_pb2.AddressBook()# Read the existing address book. try:f = open(sys.argv[1], "rb")address_book.ParseFromString(f.read())f.close() except IOError:print sys.argv[1] + ": Could not open file. Creating a new one."# Add an address. PromptForAddress(address_book.people.add())# Write the new address book back to disk. f = open(sys.argv[1], "wb") f.write(address_book.SerializeToString()) f.close() #! /usr/bin/pythonimport addressbook_pb2 import sys# Iterates though all people in the AddressBook and prints info about them. def ListPeople(address_book):for person in address_book.people:print "Person ID:", person.idprint " Name:", person.nameif person.HasField('email'):print " E-mail address:", person.emailfor phone_number in person.phones:if phone_number.type == addressbook_pb2.Person.MOBILE:print " Mobile phone #: ",elif phone_number.type == addressbook_pb2.Person.HOME:print " Home phone #: ",elif phone_number.type == addressbook_pb2.Person.WORK:print " Work phone #: ",print phone_number.number# Main procedure: Reads the entire address book from a file and prints all # the information inside. if len(sys.argv) != 2:print "Usage:", sys.argv[0], "ADDRESS_BOOK_FILE"sys.exit(-1)address_book = addressbook_pb2.AddressBook()# Read the existing address book. f = open(sys.argv[1], "rb") address_book.ParseFromString(f.read()) f.close()ListPeople(address_book)

擴(kuò)展現(xiàn)有的?protocol?buffer

在你發(fā)布你的?protocol?buffer?代碼之后,不可避免的將會(huì)出現(xiàn)需要升級(jí)代碼的情況,此時(shí)如果你需要升級(jí)后的代碼在之前的代碼中仍然可以正常運(yùn)行(向后兼容),那么升級(jí)代碼必須滿足以下要求:

  • 一定不能改變?nèi)魏维F(xiàn)有域的標(biāo)示數(shù)字(1,2,3,...)
  • 一定不能增加或刪除任何的?required?域
  • 可以刪除?optional?或者?repeated?域
  • 可以增加新的?optional?或者?repeated?域,但必須保證使用新的標(biāo)示數(shù)字。新的標(biāo)示數(shù)字必須從未被使用,即使被刪除的域使用過的標(biāo)示數(shù)字也不行
  • 還有一個(gè)些其他的規(guī)則,但都不怎么會(huì)遇到,如果需要可以參考?https://developers.google.com/protocol-buffers/docs/proto#updating

如此舊代碼就可以正常的讀取新?meassge?并簡(jiǎn)單忽略任何新的域。同時(shí)就代碼對(duì)于已經(jīng)刪除的?optional?域?qū)⒅苯邮褂媚J(rèn)值,而?repeated?域?qū)⒈恢脼榭铡6麓a也將直接讀取舊?message。然而必須注意新的?optional?域在舊代碼中并不會(huì)被提供,因此你必須顯式地訪問標(biāo)示位 has_?來判斷其是否被賦值或者通過在標(biāo)示數(shù)字之后使用 [default = value]?來指定默認(rèn)值。如果默認(rèn)值沒有被指定,那么系統(tǒng)默認(rèn)值將被使用。同時(shí),對(duì)于?repeated?域,由于其沒有?has_?標(biāo)示位,因此無法獲知其是因?yàn)樾麓a沒有賦值還是因?yàn)榕f代碼根本就沒有設(shè)置造成為空。

高階使用

可以通過如下網(wǎng)站?https://developers.google.com/protocol-buffers/docs/reference/python/?獲取更豐富的使用說明。

其中一個(gè)重要的特性就是反射(reflection)。你可以迭代?message?中的域并修改他們的值而不必針對(duì)任何特定的?message?類型而修改你的代碼。一個(gè)很有用的功能是使用反射來實(shí)現(xiàn)?protocol?buffer?和其他編碼格式,比如?XML?或者?JSON?之間的相互轉(zhuǎn)換。而一個(gè)高階的功能是反射可用來找出相同?message?類型中的差異,或者開發(fā)出一系列?protocol?message?的常規(guī)表示,在其中你可以編寫匹配特性?message?內(nèi)容的表達(dá)式。同時(shí),你可以發(fā)揮自己的想象力從而使用?protocol?buffer?來解決更多你可能遇到的問題。

關(guān)于反射的詳細(xì)介紹可以參考:https://developers.google.com/protocol-buffers/docs/reference/python/google.protobuf.message.Message-class

總結(jié)

以上是生活随笔為你收集整理的Protocol Buffer 基础(Python 版)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

午夜国产在线 | 精品久久久久久亚洲综合网站 | 98精品国产自产在线观看 | 欧美污污网站 | av大全在线免费观看 | 色网站中文字幕 | 亚洲视频精品在线 | 亚洲五月婷 | 精品亚洲视频在线观看 | 精品电影一区二区 | 久久综合五月天婷婷伊人 | 亚洲国产精品成人综合 | 欧美巨乳网 | 欧美日韩一级在线 | 日韩乱码中文字幕 | 欧美日韩精品在线一区二区 | 国内精品久久久 | 色wwwww| 国内精品久久久久影院优 | 九九九电影免费看 | 99久久精品免费看国产四区 | 精品亚洲午夜久久久久91 | 欧美一区二区在线 | 久草亚洲视频 | 国产精品精品 | av高清一区二区三区 | 中文字幕中文字幕在线中文字幕三区 | 亚洲午夜精品一区二区三区电影院 | 亚洲精品一区二区三区四区高清 | 亚洲欧美在线视频免费 | 久久久久久综合网天天 | 久久免费视频5 | 亚洲精品一区二区三区在线观看 | 国产精品一区在线观看 | 激情综合色综合久久综合 | 狠狠插天天干 | 欧美成人播放 | 日韩免费在线一区 | 亚洲精品视频免费在线 | 去看片 | 黄色三级免费片 | 黄网站a | 人人狠狠 | 狠狠的日日 | 日本中出在线观看 | 亚洲国产精品推荐 | 97在线资源| 黄色av三级在线 | 免费日韩 精品中文字幕视频在线 | 亚洲男男gaygay无套 | 免费高清国产 | 国产中文字幕在线免费观看 | 国内精品中文字幕 | 国产精品入口久久 | 国内精品久久久久久久久久久 | 国产女教师精品久久av | 在线观看亚洲a | 免费三级黄 | 蜜臀av.com | 99亚洲精品在线 | 色99之美女主播在线视频 | 亚洲永久精品在线观看 | 国产黄色播放 | 亚洲综合黄色 | 国产精品观看视频 | 在线观看一区二区视频 | 久草综合在线观看 | 久久精品一级片 | 成人国产精品久久久久久亚洲 | 国产午夜精品av一区二区 | 伊人在线视频 | 91人人爽人人爽人人精88v | 午夜 免费| av理论电影| 一区二区三区 亚洲 | 91看片一区二区三区 | 亚洲免费一级电影 | 国产91学生粉嫩喷水 | 夜夜夜夜爽 | 一区二区伦理 | 国产 日韩 欧美 中文 在线播放 | 中文字幕久久精品 | 一区二区观看 | 国内精品久久久久久久影视简单 | 欧美精品久久天天躁 | 国产亚洲人成网站在线观看 | 九九综合九九综合 | 日韩高清不卡一区二区三区 | 91久久精品一区 | 国产黄色大片免费看 | 欧美孕妇与黑人孕交 | 国产又粗又猛又爽又黄的视频免费 | 探花视频免费在线观看 | 国产免费a| 欧美一级裸体视频 | 国产黄a三级 | 婷婷综合影院 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 免费在线电影网址大全 | 日韩毛片在线播放 | 在线免费观看国产 | 国产午夜一级毛片 | 亚洲在线看 | 久久精品视频在线免费观看 | 99亚洲精品视频 | 国产乱对白刺激视频在线观看女王 | 国产在线中文字幕 | 国产一线二线三线在线观看 | 97超碰超碰久久福利超碰 | 亚洲成人xxx| 91丨九色丨国产女 | 欧美成人在线免费 | 国产一区麻豆 | 午夜精品视频一区 | 欧美激情综合网 | 99视频在线免费播放 | 综合网伊人| av在线成人 | 97在线影视 | 最近免费中文字幕 | 97在线观看免费观看高清 | 国产精品久久久久久久久软件 | 亚洲精品国产拍在线 | 黄色小说视频网站 | 日韩在线观看av | 69久久99精品久久久久婷婷 | 成人性生交视频 | 免费观看国产精品 | 黄色官网在线观看 | 在线视频日韩一区 | 韩国av永久免费 | 中文字幕中文字幕 | 亚洲国产精品资源 | 成人福利在线播放 | 91麻豆精品国产91 | 日韩特黄一级欧美毛片特黄 | 国产精品免费看 | 亚洲精品www久久久 www国产精品com | 99精品视频在线观看播放 | 黄色91在线观看 | 在线免费观看不卡av | 国产精品网站一区二区三区 | 五月天国产精品 | 视频一区二区国产 | 久久久精品福利视频 | 福利av在线 | 成人亚洲免费 | 黄网站色视频免费观看 | www亚洲一区 | 久久综合影视 | 天堂av免费| 日韩在线视频播放 | 成人精品亚洲 | 精品爱爱 | 久久理论电影 | 91精品国自产在线观看欧美 | 久久精品免费播放 | 91系列在线观看 | 久久影视一区 | 国产精品一区二区久久 | 国产精品6| 黄色电影网站在线观看 | 又爽又黄又刺激的视频 | 久久综合久久综合久久 | 在线成人看片 | 久久久久久久久久网站 | 久久精品视频观看 | 国产精品一区在线观看 | 亚洲国产视频在线 | 亚洲春色综合另类校园电影 | 2023国产精品自产拍在线观看 | 国产在线高清视频 | 久久久久久久久影院 | 国产精品一区二区在线观看 | 婷婷成人亚洲综合国产xv88 | 日韩区在线观看 | 国产又粗又长又硬免费视频 | www色com | 国产视频日本 | 亚洲精品电影在线 | 国产成人亚洲在线电影 | 欧美精品久久久久久久久免 | 国产精品久久久久久久久搜平片 | 操久久免费视频 | 欧美激情第八页 | 99免费在线观看视频 | 国产亚洲情侣一区二区无 | 日韩视频在线观看免费 | 在线久热 | 精品国产色 | 久久久久北条麻妃免费看 | 久久久久久久久久久久亚洲 | 国产午夜精品一区二区三区四区 | 狠狠色丁香婷婷综合橹88 | 92国产精品久久久久首页 | 娇妻呻吟一区二区三区 | 成人a在线观看高清电影 | 五月婷婷视频在线观看 | 91人网站 | 粉嫩一区二区三区粉嫩91 | 欧美日韩视频免费 | 欧美日韩久久不卡 | 亚洲精品成人在线 | 亚洲禁18久人片 | 日批视频在线观看免费 | 中文字幕色综合网 | 日日日爽爽爽 | 91九色蝌蚪视频在线 | 亚洲在线资源 | 91九色视频| 97人人超碰在线 | 久久久精品一区二区三区 | 99精品视频免费全部在线 | 麻豆视频国产精品 | 亚洲精品美女久久久 | 国产视频99| 国产日韩欧美中文 | 久久久久久免费网 | 久久国内视频 | 成人中文字幕在线观看 | 国产成人91 | 四虎影视www| 国产日产欧美在线观看 | 91九色综合 | 久久www免费人成看片高清 | 天天摸天天操天天爽 | 久久国内视频 | www.夜夜干.com| 国产一区欧美一区 | 天天操综| 欧美va天堂va视频va在线 | 国产综合视频在线观看 | 黄色免费观看 | 国产 欧美 日本 | 在线观看免费观看在线91 | 在线不卡视频 | 999国产 | 亚洲高清久久久 | 久久免费视频一区 | 国产伦精品一区二区三区无广告 | 亚洲狠狠丁香婷婷综合久久久 | 日韩在线第一区 | 91久久精品一区二区三区 | 成人h视频在线 | 国产精品久久综合 | 欧美国产不卡 | 99色人| 色综合天天色综合 | 在线你懂| 99久久久免费视频 | 亚洲国产中文在线观看 | 国产 成人 久久 | 69久久久久久久 | 久久伦理电影网 | 91大神视频网站 | 国产视频资源 | 狠狠干 狠狠操 | 在线观看国产日韩欧美 | 中国一 片免费观看 | 久久综合精品国产一区二区三区 | 久久不卡免费视频 | 特级毛片爽www免费版 | 国产高清无线码2021 | 久久久免费精品视频 | 久久综合九色综合欧美狠狠 | 五月天久久久久 | 在线视频一区观看 | 麻豆传媒视频在线播放 | 九九涩涩av台湾日本热热 | 天天在线免费视频 | 麻豆传媒精品 | 日本黄网站 | 日韩在线电影观看 | 顶级bbw搡bbbb搡bbbb | 青春草国产视频 | av高清一区二区三区 | 人成在线免费视频 | 毛片网在线| 久久久免费 | 在线一区二区三区 | 国产日产高清dvd碟片 | 一级a性色生活片久久毛片波多野 | 国产又粗又猛又黄又爽 | www99久久 | 色婷婷电影 | 精品婷婷 | 日韩精品久久久久 | 国产一级电影 | 久久久久久久久福利 | 欧美一级黄色片 | 国产99黄| 973理论片235影院9 | 成人av在线网址 | 国产精品com | 免费又黄又爽 | 婷婷色综合 | 91久久黄色| 欧美日韩综合在线 | 超碰在97| 丁香综合| 91精品国产91久久久久福利 | 日韩中文字幕一区 | 成人精品视频久久久久 | 国产精品一区二区三区在线播放 | 四虎在线观看精品视频 | www.91国产 | 日韩综合精品 | 麻豆影音先锋 | 992tv在线观看网站 | 日韩毛片在线播放 | 成人cosplay福利网站 | 亚洲日本三级 | 国产小视频你懂的 | 中文字幕一区2区3区 | 成年人国产视频 | 国产成人精品在线观看 | 91精品国产自产91精品 | 99视频在线精品 | 中文字幕日韩电影 | 97精品国产91久久久久久久 | 日韩一级黄色av | 在线观看成人一级片 | 亚洲精品在线一区二区三区 | 免费观看全黄做爰大片国产 | 精品视频久久久 | 久久久www成人免费毛片 | 亚洲粉嫩av | 91麻豆精品 | av网站有哪些| 国产一二三在线视频 | 国产91精品一区二区麻豆亚洲 | 成人午夜毛片 | 成人国产精品一区二区 | 美女在线观看网站 | 中文字幕在线观看完整版电影 | 久久国产精品99国产 | av理论电影 | 99热国产在线观看 | 欧美污污网站 | 中文字幕有码在线播放 | 国产精品久久久久久久久软件 | 日本中文字幕网 | 国产剧情一区 | 成人xxxx| 国产精品入口传媒 | 久久九九久久九九 | 黄a在线 | 99热国产精品 | 亚洲人成人在线 | 亚洲永久精品在线 | 国产精品99久久久久久有的能看 | 美国三级黄色大片 | 午夜精品久久久久久久99 | 伊人影院av | 一级精品视频在线观看宜春院 | 欧美国产一区二区 | 丁香六月婷婷开心婷婷网 | 久久福利影视 | 91麻豆精品国产91久久久无限制版 | 国产一二区精品 | 久久久久久久久久久精 | 福利电影一区二区 | 成人免费观看网址 | 久久久高清免费视频 | 伊人永久| 久久免费看毛片 | 欧美在线不卡一区 | 亚洲精品小视频在线观看 | 国产亚洲免费的视频看 | 国产视频亚洲视频 | 免费国产亚洲视频 | 蜜臀91丨九色丨蝌蚪老版 | 在线观看av免费 | 欧美老女人xx | 色综合久久久久综合体桃花网 | 在线97| 国外av在线 | 日韩欧美高清一区二区三区 | 一区二区久久久久 | 五月婷婷六月丁香激情 | 二区三区在线观看 | 91色视频 | 天天草天天干天天 | 久热免费在线观看 | 狠狠操狠狠操 | 草久久影院 | 日日干夜夜草 | 欧美国产日韩在线观看 | 国产精品久久久久久久免费 | 91成人精品一区在线播放69 | 国产精品国产亚洲精品看不卡 | 激情网站免费观看 | 久久国产精品免费一区 | 99精品国产99久久久久久福利 | 亚洲欧洲一区二区在线观看 | 国内精品久久影院 | 天天射夜夜爽 | 欧洲性视频 | 精品久久久久免费极品大片 | 手机色站 | 国产精品v a免费视频 | 丁香影院在线 | 西西444www大胆高清视频 | 欧美日韩国内在线 | 久久久观看 | 亚洲国产成人精品在线 | 西西444www | 国产区久久| 国产精品久久久久久久7电影 | 丁香视频五月 | 超碰人人草人人 | 久草在线视频在线观看 | 亚洲在线观看av | 精品综合久久 | 二区三区在线 | 最近中文字幕mv免费高清在线 | 在线不卡中文字幕播放 | 国产精品久久久一区二区三区网站 | 日韩在线观看视频在线 | 国产一区视频在线观看免费 | 国产色道 | av不卡网站 | 久久久久久久久亚洲精品 | 天天射射天天 | 超碰人人草| 91在线视频精品 | 成人免费视频观看 | 天天爽天天爽天天爽 | 99国产在线观看 | 日韩免费看片 | 91九色蝌蚪国产 | 国产一区二区日本 | 久久成人资源 | 黄色在线免费观看网址 | 国产高清不卡一区二区三区 | 狠狠干综合 | 亚洲黄色影院 | 久久国产精品免费一区二区三区 | 91精品国产综合久久婷婷香蕉 | 97香蕉超级碰碰久久免费软件 | 中文av资源站 | 免费av 在线| 色99网| 干干日日 | 亚洲精品成人av在线 | 精品91| 国产高清在线看 | 亚州精品国产 | 91九色视频国产 | 色偷偷av男人天堂 | 欧洲精品一区二区 | 国产99久久久国产 | 高清免费av在线 | 欧美一二三区播放 | 五月开心色 | 亚洲欧美色婷婷 | 欧美激情综合色综合啪啪五月 | 亚洲精品乱码久久久久久高潮 | 国产精品久久久久久欧美 | 香蕉视频网站在线观看 | 中文字幕在线观看第三页 | 亚洲成人黄色网址 | 色偷偷人人澡久久超碰69 | 69亚洲乱| 天堂va欧美va亚洲va老司机 | 久久精品一 | av大片网站 | 天天干天天操人体 | 欧美日韩在线观看一区二区三区 | 国产97av| 91天堂在线观看 | 亚洲天堂网站 | 亚洲女同videos | 国产一区二区三区在线免费观看 | 成人一级免费电影 | 成 人 黄 色视频免费播放 | 国产第一二区 | 在线观看亚洲精品视频 | 韩国av免费观看 | 成人网色 | 麻豆首页 | 狠狠躁夜夜躁人人爽超碰91 | 毛片网站在线 | 久久神马影院 | 亚洲国产精品一区二区久久hs | 青春草免费在线视频 | 国产成人精品av在线观 | 国产亚洲精品av | 综合在线亚洲 | 伊人久久婷婷 | 久久激五月天综合精品 | 波多野结衣日韩 | 国产精品一区久久久久 | 亚洲天堂毛片 | 日韩一区二区免费视频 | 一级免费片 | 中文字幕成人一区 | 女人18精品一区二区三区 | 日韩欧美精品一区二区三区经典 | 日日婷婷夜日日天干 | 欧美男同视频网站 | 婷婷色站 | 中文字幕日韩免费视频 | 天天夜操 | 欧美一区二区免费在线观看 | 日狠狠| 99热在线观看 | 免费99视频 | 日本久久久久久久久 | 五月婷综合网 | 亚洲高清视频在线 | 久久 精品一区 | 91入口在线观看 | 亚洲一区免费在线 | 四虎在线免费 | 亚洲特级毛片 | 亚洲美女精品区人人人人 | 在线播放 日韩专区 | av免费在线播放 | 亚洲.www | 久久视频在线观看免费 | 黄色成人在线观看 | 五月婷在线 | 欧美一区二区免费在线观看 | 免费人成在线观看 | 国产一级一片免费播放放 | 久久精品人人做人人综合老师 | 五月天天色 | 不卡av在线免费观看 | 久草精品电影 | 日韩国产精品一区 | 国产色视频网站 | 精品亚洲视频在线观看 | 精品国偷自产在线 | 九九色综合 | 精品国产乱码久久久久久浪潮 | 成人精品电影 | 久久草网 | 久久综合九色综合久99 | 色五月情| 亚洲成av人片一区二区梦乃 | 免费手机黄色网址 | 人人爽久久涩噜噜噜网站 | 日日夜夜天天操 | a级国产乱理论片在线观看 特级毛片在线观看 | 亚洲最大成人网4388xx | 中文字幕高清av | 天天操夜操 | 丁香免费视频 | 日日干夜夜骑 | 91黄色免费看 | 国产精品一区二区免费在线观看 | 超碰在线天天 | 日日操日日| 91精品免费视频 | 亚洲免费色| 欧美日韩国产在线精品 | 色综合人人 | 亚洲一区网站 | 国产最新视频在线观看 | 国产999精品久久久影片官网 | 在线免费观看涩涩 | 久久精品视频网 | 国产乱老熟视频网88av | 五月综合久久 | 美女精品 | 成人亚洲综合 | 波多野结衣理论片 | 97偷拍在线视频 | 日韩三级一区 | 国产一区二区三区免费视频 | 亚洲精品女 | 亚洲成人免费在线 | av资源免费观看 | 中文字幕传媒 | 在线之家官网 | 日日爱av| 国产精品爽爽久久久久久蜜臀 | 久草在线中文视频 | 久久国产精品小视频 | 国产亚洲精品中文字幕 | 精品在线亚洲视频 | 中文字幕在线一二 | 国产香蕉97碰碰久久人人 | 亚洲精品资源 | 国产三级久久久 | 亚洲午夜久久久综合37日本 | 成人免费一区二区三区在线观看 | 日韩高清免费在线观看 | 在线观看视频一区二区三区 | 亚洲在线视频观看 | 久久香蕉国产 | 九九视频免费在线观看 | 中文字幕精品在线 | av免费在线观看1 | 久久高清 | 亚洲综合视频网 | 国产91大片 | 日韩免费视频在线观看 | 日韩在线免费 | 中文字幕高清视频 | 国产999视频在线观看 | 欧美一级片免费在线观看 | 五月婷婷在线观看视频 | 成年美女黄网站色大片免费看 | 精品超碰 | 色婷婷亚洲| av免费电影在线观看 | 中文字幕在线视频免费播放 | 欧美日韩中文字幕视频 | 99中文字幕| 激情在线网址 | 免费看成人 | 午夜精品一区二区三区在线播放 | 国产精品99页 | 丁香九月激情综合 | 中文字幕在线观看亚洲 | 五月天激情综合网 | 国产成人精品久久二区二区 | 亚洲国产视频网站 | 免费精品在线视频 | 国产综合激情 | 国产视频网站在线观看 | 欧美人zozo | 亚洲欧美精品一区二区 | 成人久久电影 | 久久婷婷精品 | 免费在线国产黄色 | 欧美色图另类 | 狠狠狠色丁香婷婷综合久久五月 | 手机看片| 免费观看v片在线观看 | avcom在线| 99精品视频免费在线观看 | av品善网 | 久久国产午夜精品理论片最新版本 | 国产精品嫩草在线 | 日韩视频一区二区三区在线播放免费观看 | av在线免费在线 | wwwwww色| 在线一区电影 | 久久久久国产精品免费免费搜索 | www国产一区 | 精品视频在线看 | 国产在线视频资源 | 97高清视频 | 国产精品99久久久 | 久久久久久福利 | 天天视频色版 | 国产精品毛片久久久久久久久久99999999 | 草草草影院| 久久资源在线 | 99精品免费在线观看 | av片在线观看 | 青青河边草免费观看完整版高清 | 香蕉视频网站在线观看 | 国产九九九精品视频 | 成人免费色 | 亚洲成人免费观看 | 国产亚洲一区二区在线观看 | av中文字幕日韩 | 午夜精品久久久久久久99水蜜桃 | 国产亚洲精品免费 | 性日韩欧美在线视频 | 午夜成人免费影院 | 久久久国产精品麻豆 | 亚洲最新av网站 | 色在线网站 | 98超碰在线 | 日韩av免费一区二区 | 99视频在线精品国自产拍免费观看 | 国产乱码精品一区二区三区介绍 | 蜜臀久久99精品久久久无需会员 | 国产精品12 | 久久在线免费观看视频 | 99热这里只有精品在线观看 | 成人一级电影在线观看 | 久久99久久99精品免观看粉嫩 | 在线观看香蕉视频 | 亚洲成人av在线 | 亚洲欧美婷婷六月色综合 | 在线国产激情视频 | 91资源在线免费观看 | 国产精品久久久久久一二三四五 | 国产精品99精品 | 成人作爱视频 | 国产在线一线 | 国产精品一区二区久久精品爱涩 | 久热久草在线 | 免费能看的av | 狠狠色丁香久久婷婷综合_中 | 婷五月激情 | 在线播放 一区 | 亚洲精品免费视频 | 免费看一及片 | 国产v亚洲v | 久久久 精品 | 亚洲乱码国产乱码精品天美传媒 | 婷婷在线视频观看 | 国内久久久久久 | 日韩欧美一区二区三区视频 | 手机av在线网站 | 精品国产精品国产偷麻豆 | 中文字幕一区二区在线观看 | 91夫妻视频 | 99精品视频在线播放观看 | 久久久久久久久久福利 | 久草在线观 | 西西人体4444www高清视频 | 国产精品aⅴ| 精品视频免费久久久看 | 亚洲精品视频大全 | 日韩精品综合在线 | 国产成人在线网站 | 国产精品精品 | 黄色在线观看免费 | 久久久亚洲精品 | 国产精品午夜在线 | 久草在线一免费新视频 | 久久久精品国产一区二区 | 久久久久国产精品一区二区 | 国产精品丝袜久久久久久久不卡 | www99久久| 996久久国产精品线观看 | 久久九九影视 | 国产一区视频免费在线观看 | 久久综合丁香 | 91最新网址在线观看 | 久久一区二区三区国产精品 | 91爱爱免费观看 | 欧美精品国产综合久久 | a特级毛片| 久久看看| av资源中文字幕 | 亚洲黄色片在线 | www.黄色片网站 | 欧美精品中文字幕亚洲专区 | 久草在线资源免费 | 国产1区2区3区精品美女 | av黄色av| 成人四虎 | 国产成视频在线观看 | 激情网在线观看 | 久久久免费精品国产一区二区 | 国产欧美精品在线观看 | 国产一级大片在线观看 | 日韩av在线看 | 91精品导航| 亚洲国产精品一区二区久久,亚洲午夜 | 四虎在线免费观看 | 色婷婷 亚洲 | 狠狠色噜噜狠狠狠狠2021天天 | 99久久这里有精品 | 亚洲国产电影在线观看 | 国产不卡在线观看视频 | 国产亚洲精品精品精品 | 三级在线视频观看 | 黄p在线播放 | 激情黄色av| 99自拍视频在线观看 | 一区二区中文字幕在线观看 | 国产午夜精品理论片在线 | 一区二区三区www | 免费看污污视频的网站 | 福利一区二区在线 | 久久成视频 | 日韩电影中文字幕在线观看 | 91在线影视| 国产国语在线 | 99热在线看 | 美女视频黄网站 | 免费成人av电影 | 欧美国产不卡 | 人人干人人添 | 亚洲欧美一区二区三区孕妇写真 | 日本在线视频网址 | 黄色三级久久 | 国产视频一区二区三区在线 | 亚洲春色综合另类校园电影 | 国产麻豆精品在线观看 | 天天射天天干天天插 | 日本免费一二三区 | 免费看三级黄色片 | 国产精品久久久久久久电影 | 成人av.com | 奇米先锋 | 国产精品video爽爽爽爽 | 免费看一及片 | 国产精品第54页 | 午夜免费电影院 | 少妇精69xxtheporn | 手机在线欧美 | 99精品视频精品精品视频 | 999热视频 | 香蕉久久久久久久 | a亚洲视频| 日本激情中文字幕 | 免费看成年人 | 国产精品嫩草影院123 | 久久久久久久精 | 91网在线看 | 99se视频在线观看 | 九九热国产视频 | 在线午夜 | 久久综合久久综合九色 | 中文在线资源 | 免费在线观看污网站 | 精品久久久久久亚洲综合网站 | 久久99精品波多结衣一区 | 久久久精品国产免费观看一区二区 | 91丨精品丨蝌蚪丨白丝jk | av网站手机在线观看 | 99tvdz@gmail.com| 超碰97人人射妻 | 婷婷爱五月天 | 国产高清视频免费观看 | 久久久久亚洲精品成人网小说 | 999精品 | 99成人在线视频 | 不卡的av电影 | 最近日本字幕mv免费观看在线 | 亚洲精选在线观看 | 色美女在线 | 亚洲热久久 | av久久在线| 国产亚洲精品无 | 欧美日韩在线播放 | 国产免费又粗又猛又爽 | 亚洲五月激情 | 国产在线观 | 成人国产网站 | 亚洲区另类春色综合小说校园片 | 在线观看av免费观看 | 日韩欧美在线国产 | 亚洲闷骚少妇在线观看网站 | 日韩在线短视频 | 日韩中文三级 | 在线黄网站 | 日韩在线视频精品 | 亚洲视频精品 | 在线亚洲观看 | 天天草天天摸 | 在线观看黄av| 国产精品视频99 | 天天操 夜夜操 | 福利网址在线观看 | 久久理伦片 | 三级a视频 | 日韩欧美在线一区 | 午夜12点 | 国产成人一区在线 | 日韩免费在线视频观看 | 99久热| 日日操网站 | 美女在线免费观看视频 | 日韩精品中文字幕在线观看 | 伊人午夜视频 | 免费看片成年人 | 国产精品久久久 | 日韩理论在线 | 欧美精品一区二区免费 | 成人毛片a | 久草网免费 | 亚洲免费av观看 | 伊人狠狠色丁香婷婷综合 | 日韩免费一区二区 | 中文资源在线播放 | 波多野结衣在线中文字幕 | 欧美日韩在线播放一区 | 五月婷社区 | 亚洲国产精品资源 | 国外成人在线视频网站 | 一区二区三区手机在线观看 | 香蕉在线视频观看 | 国产精品美女在线观看 | 亚洲免费a | 福利片视频区 | 色网站黄| 久久99精品久久久久久久久久久久 | 一区二区三区免费 | 欧美最爽乱淫视频播放 | 在线观看日韩视频 | 91视频88av| 午夜在线免费观看视频 | 9999国产精品 | 精品伊人久久久 | 91麻豆精品国产91久久久使用方法 | 国产在线播放一区 | 丝袜+亚洲+另类+欧美+变态 | 色婷婷一区 | 特及黄色片 | 久久久久久久久久久久久久av | 色狠狠一区二区 | 精品视频| 狠狠干天天色 | 一二三精品视频 | 天海翼一区二区三区免费 | 欧美日韩国产精品一区二区亚洲 | 欧美亚洲免费在线一区 | 国产香蕉视频在线观看 | 最新国产中文字幕 | 九九热精品视频在线观看 | 天天艹日日干 | 91激情视频在线播放 | 探花在线观看 | 国产裸体视频bbbbb | 久久久久久黄色 | 国产成人三级在线 | 久久免费视频7 | 91一区啪爱嗯打偷拍欧美 | 人人草在线观看 | 久久国产色 | 日日干天天插 | 欧美国产91 | 久草在线资源观看 | 欧美一区二区三区激情视频 | 欧美久久久久久 | 亚洲视频,欧洲视频 | 成人免费视频观看 | 97国产精品 | av片在线观看免费 | 香蕉视频国产在线观看 | 久久亚洲精品国产亚洲老地址 | 玖玖在线观看视频 | 制服丝袜天堂 | 一级免费观看 | 黄色网址av| 91刺激视频 | 日韩在线观看影院 | 欧美精品在线一区二区 | 精品一区二区精品 | 999色视频 | 96精品在线 | 久久久精品在线观看 | 国产精品18久久久久久久久 | 最新日韩电影 | 日韩视频三区 | 亚洲色图 校园春色 | 久久久久国产成人精品亚洲午夜 | 日韩精品一区在线观看 | 久久深爱网 | 激情伊人五月天久久综合 | 国产精品美女久久 | 亚洲精品影院在线观看 | 在线观看一级 | 一色av| 亚洲精品动漫成人3d无尽在线 | 草久视频在线 | 成人网色 | av免费观看网址 | 久草在线在线 | 国产精品毛片一区视频播不卡 | 在线91播放 | 99re在线视频观看 | 午夜视频亚洲 | 亚洲日本va中文字幕 | 国产69熟 | 九七人人干 | 免费看一级黄色 | 9992tv成人免费看片 | 97精品视频在线 | 五月天婷亚洲天综合网精品偷 | 亚洲做受高潮欧美裸体 | 丁香激情综合久久伊人久久 | 麻豆成人小视频 | 亚洲综合视频在线观看 | 久久久久久久久久久久国产精品 | 天天拍天天干 | 欧美韩日视频 | 午夜精品一区二区三区免费视频 | 福利一区二区在线 | 97精品国产97久久久久久免费 | 成人午夜影院 | 五月婷久 | 国产1级毛片 | 国产在线不卡 | 亚洲国产中文字幕在线 | 婷婷激情综合五月天 | 伊人亚洲综合 | 最近中文字幕mv免费高清在线 | 人人爽人人澡 | 国产一级一片免费播放放 | 天天做天天爱天天综合网 | 黄免费在线观看 | 国产爽视频 | 最新中文字幕在线观看视频 | 在线高清| av免费电影在线观看 | 草草草影院 | 亚洲全部视频 | 97超碰在线人人 | www.天天操.com | 中文字幕永久免费 | 国产破处精品 | 免费a v观看| 狠狠色伊人亚洲综合成人 | 韩国av三级 | 中文字幕在线影院 |