国产凹凸在线-国产拗女一区二区三区-国产白白视-国产白领-国产白拍-国产白丝jk被疯狂输-国产白丝喷-国产白丝在线

金喜正规买球

Word處理控件Aspose.Words功能演示:在 Python 中從 Word 文檔中提取文本

翻譯|使用教程|編輯:胡濤|2022-05-16 15:27:59.647|閱讀 240 次

概述:我們將介紹如何動態(tài)提取段落、表格等特定元素之間的內(nèi)容。

# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>

相關(guān)鏈接:

在 Python 中從 Word DOCX 文檔中提取內(nèi)容

從 Word 文檔中提取文本通常在不同的場景中執(zhí)行。例如,分析文本,提取文檔的特定部分并將它們組合成單個文檔,等等。在本文中,您將學(xué)習(xí)如何在 Python 中以編程方式從 Word 文檔中提取文本。此外,我們將介紹如何動態(tài)提取段落、表格等特定元素之間的內(nèi)容。

Aspose.Words for . Python 最新下載

信息:如果您需要從 PowerPoint 演示文稿中獲取 Word 文檔,您可以使用 Aspose演示文稿到 Word 文檔轉(zhuǎn)換器。

從 Word 文檔中提取文本的 Python 庫

Aspose.Words for Python是一個強(qiáng)大的庫,可讓您從頭開始創(chuàng)建 MS Word 文檔。此外,它可以讓您操作現(xiàn)有的 Word 文檔進(jìn)行加密、轉(zhuǎn)換、文本提取等。我們將使用這個庫從 Word DOCX 或 DOC 文檔中提取文本。您可以使用以下 pip 命令從PyPI安裝庫。

pip install aspose-words
使用 Python 在 Word 文檔中提取文本

MS Word 文檔由各種元素組成,包括段落、表格、圖像等。因此,文本提取的要求可能因一種情況而異。例如,您可能需要在段落、書簽、評論等之間提取文本。

Word 文檔中的每種類型的元素都表示為一個節(jié)點。因此,要處理文檔,您將不得不使用節(jié)點。那么讓我們開始看看如何在不同的場景下從 Word 文檔中提取文本。

在 Python 中從 Word 文檔中提取文本

在本節(jié)中,我們將為 Word 文檔實現(xiàn)一個 Python 文本提取器,文本提取的工作流程如下:

  • 首先,我們將定義要包含在文本提取過程中的節(jié)點。
  • 然后,我們將提取指定節(jié)點之間的內(nèi)容(包括或不包括開始和結(jié)束節(jié)點)。
  • 最后,我們將使用提取節(jié)點的克隆,例如創(chuàng)建一個包含提取內(nèi)容的新 Word 文檔。

現(xiàn)在讓我們編寫一個名為extract_content的方法,我們將向該方法傳遞節(jié)點和一些其他參數(shù)來執(zhí)行文本提取。此方法將解析文檔并克隆節(jié)點。以下是我們將傳遞給此方法的參數(shù)。

  1. StartNodeEndNode 分別作為內(nèi)容提取的起點和終點。這些可以是塊級(ParagraphTable)或內(nèi)聯(lián)級(例如 RunFieldStartBookmarkStart 等)節(jié)點。
    1. 要傳遞一個字段,您應(yīng)該傳遞相應(yīng)的 FieldStart 對象。
    2. 要傳遞書簽,  應(yīng)傳遞BookmarkStartBookmarkEnd節(jié)點。
    3. 對于評論,  應(yīng)使用CommentRangeStartCommentRangeEnd節(jié)點。
  2. IsInclusive定義標(biāo)記是否包含在提取中。如果此選項設(shè)置為 false 并且傳遞相同的節(jié)點或連續(xù)節(jié)點,則將返回一個空列表。

以下是extract_content方法的完整實現(xiàn),該方法提取傳遞的節(jié)點之間的內(nèi)容。

def extract_content(startNode : aw.Node, endNode : aw.Node, isInclusive : bool):

# First, check that the nodes passed to this method are valid for use.
verify_parameter_nodes(startNode, endNode)

# Create a list to store the extracted nodes.
nodes = []

# If either marker is part of a comment, including the comment itself, we need to move the pointer
# forward to the Comment Node found after the CommentRangeEnd node.
if (endNode.node_type == aw.NodeType.COMMENT_RANGE_END and isInclusive) :

node = find_next_node(aw.NodeType.COMMENT, endNode.next_sibling)
if (node != None) :
endNode = node

# Keep a record of the original nodes passed to this method to split marker nodes if needed.
originalStartNode = startNode
originalEndNode = endNode

# Extract content based on block-level nodes (paragraphs and tables). Traverse through parent nodes to find them.
# We will split the first and last nodes' content, depending if the marker nodes are inline.
startNode = get_ancestor_in_body(startNode)
endNode = get_ancestor_in_body(endNode)

isExtracting = True
isStartingNode = True
# The current node we are extracting from the document.
currNode = startNode

# Begin extracting content. Process all block-level nodes and specifically split the first
# and last nodes when needed, so paragraph formatting is retained.
# Method is a little more complicated than a regular extractor as we need to factor
# in extracting using inline nodes, fields, bookmarks, etc. to make it useful.
while (isExtracting) :

# Clone the current node and its children to obtain a copy.
cloneNode = currNode.clone(True)
isEndingNode = currNode == endNode

if (isStartingNode or isEndingNode) :

# We need to process each marker separately, so pass it off to a separate method instead.
# End should be processed at first to keep node indexes.
if (isEndingNode) :
# !isStartingNode: don't add the node twice if the markers are the same node.
process_marker(cloneNode, nodes, originalEndNode, currNode, isInclusive, False, not isStartingNode, False)
isExtracting = False

# Conditional needs to be separate as the block level start and end markers, maybe the same node.
if (isStartingNode) :
process_marker(cloneNode, nodes, originalStartNode, currNode, isInclusive, True, True, False)
isStartingNode = False

else :
# Node is not a start or end marker, simply add the copy to the list.
nodes.append(cloneNode)

# Move to the next node and extract it. If the next node is None,
# the rest of the content is found in a different section.
if (currNode.next_sibling == None and isExtracting) :
# Move to the next section.
nextSection = currNode.get_ancestor(aw.NodeType.SECTION).next_sibling.as_section()
currNode = nextSection.body.first_child

else :
# Move to the next node in the body.
currNode = currNode.next_sibling

# For compatibility with mode with inline bookmarks, add the next paragraph (empty).
if (isInclusive and originalEndNode == endNode and not originalEndNode.is_composite) :
include_next_paragraph(endNode, nodes)

# Return the nodes between the node markers.
return nodes

extract_content方法還需要一些輔助方法來完成文本提取操作,如下所示。

def verify_parameter_nodes(start_node: aw.Node, end_node: aw.Node):

# The order in which these checks are done is important.
if start_node is None:
raise ValueError("Start node cannot be None")
if end_node is None:
raise ValueError("End node cannot be None")

if start_node.document != end_node.document:
raise ValueError("Start node and end node must belong to the same document")

if start_node.get_ancestor(aw.NodeType.BODY) is None or end_node.get_ancestor(aw.NodeType.BODY) is None:
raise ValueError("Start node and end node must be a child or descendant of a body")

# Check the end node is after the start node in the DOM tree.
# First, check if they are in different sections, then if they're not,
# check their position in the body of the same section.
start_section = start_node.get_ancestor(aw.NodeType.SECTION).as_section()
end_section = end_node.get_ancestor(aw.NodeType.SECTION).as_section()

start_index = start_section.parent_node.index_of(start_section)
end_index = end_section.parent_node.index_of(end_section)

if start_index == end_index:

if (start_section.body.index_of(get_ancestor_in_body(start_node)) >
end_section.body.index_of(get_ancestor_in_body(end_node))):
raise ValueError("The end node must be after the start node in the body")

elif start_index > end_index:
raise ValueError("The section of end node must be after the section start node")


def find_next_node(node_type: aw.NodeType, from_node: aw.Node):

if from_node is None or from_node.node_type == node_type:
return from_node

if from_node.is_composite:

node = find_next_node(node_type, from_node.as_composite_node().first_child)
if node is not None:
return node

return find_next_node(node_type, from_node.next_sibling)


def is_inline(node: aw.Node):

# Test if the node is a descendant of a Paragraph or Table node and is not a paragraph
# or a table a paragraph inside a comment class that is decent of a paragraph is possible.
return ((node.get_ancestor(aw.NodeType.PARAGRAPH) is not None or node.get_ancestor(aw.NodeType.TABLE) is not None) and
not (node.node_type == aw.NodeType.PARAGRAPH or node.node_type == aw.NodeType.TABLE))


def process_marker(clone_node: aw.Node, nodes, node: aw.Node, block_level_ancestor: aw.Node,
is_inclusive: bool, is_start_marker: bool, can_add: bool, force_add: bool):

# If we are dealing with a block-level node, see if it should be included and add it to the list.
if node == block_level_ancestor:
if can_add and is_inclusive:
nodes.append(clone_node)
return

# cloneNode is a clone of blockLevelNode. If node != blockLevelNode, blockLevelAncestor
# is the node's ancestor that means it is a composite node.
assert clone_node.is_composite

# If a marker is a FieldStart node check if it's to be included or not.
# We assume for simplicity that the FieldStart and FieldEnd appear in the same paragraph.
if node.node_type == aw.NodeType.FIELD_START:
# If the marker is a start node and is not included, skip to the end of the field.
# If the marker is an end node and is to be included, then move to the end field so the field will not be removed.
if is_start_marker and not is_inclusive or not is_start_marker and is_inclusive:
while node.next_sibling is not None and node.node_type != aw.NodeType.FIELD_END:
node = node.next_sibling

# Support a case if the marker node is on the third level of the document body or lower.
node_branch = fill_self_and_parents(node, block_level_ancestor)

# Process the corresponding node in our cloned node by index.
current_clone_node = clone_node
for i in range(len(node_branch) - 1, -1):

current_node = node_branch[i]
node_index = current_node.parent_node.index_of(current_node)
current_clone_node = current_clone_node.as_composite_node.child_nodes[node_index]

remove_nodes_outside_of_range(current_clone_node, is_inclusive or (i > 0), is_start_marker)

# After processing, the composite node may become empty if it has doesn't include it.
if can_add and (force_add or clone_node.as_composite_node().has_child_nodes):
nodes.append(clone_node)


def remove_nodes_outside_of_range(marker_node: aw.Node, is_inclusive: bool, is_start_marker: bool):

is_processing = True
is_removing = is_start_marker
next_node = marker_node.parent_node.first_child

while is_processing and next_node is not None:

current_node = next_node
is_skip = False

if current_node == marker_node:
if is_start_marker:
is_processing = False
if is_inclusive:
is_removing = False
else:
is_removing = True
if is_inclusive:
is_skip = True

next_node = next_node.next_sibling
if is_removing and not is_skip:
current_node.remove()


def fill_self_and_parents(node: aw.Node, till_node: aw.Node):

nodes = []
current_node = node

while current_node != till_node:
nodes.append(current_node)
current_node = current_node.parent_node

return nodes


def include_next_paragraph(node: aw.Node, nodes):

paragraph = find_next_node(aw.NodeType.PARAGRAPH, node.next_sibling).as_paragraph()
if paragraph is not None:

# Move to the first child to include paragraphs without content.
marker_node = paragraph.first_child if paragraph.has_child_nodes else paragraph
root_node = get_ancestor_in_body(paragraph)

process_marker(root_node.clone(True), nodes, marker_node, root_node,
marker_node == paragraph, False, True, True)


def get_ancestor_in_body(start_node: aw.Node):

while start_node.parent_node.node_type != aw.NodeType.BODY:
start_node = start_node.parent_node
return start_node
def generate_document(src_doc: aw.Document, nodes):

dst_doc = aw.Document()
# Remove the first paragraph from the empty document.
dst_doc.first_section.body.remove_all_children()

# Import each node from the list into the new document. Keep the original formatting of the node.
importer = aw.NodeImporter(src_doc, dst_doc, aw.ImportFormatMode.KEEP_SOURCE_FORMATTING)

for node in nodes:
import_node = importer.import_node(node, True)
dst_doc.first_section.body.append_child(import_node)

return dst_doc


def paragraphs_by_style_name(doc: aw.Document, style_name: str):

paragraphs_with_style = []
paragraphs = doc.get_child_nodes(aw.NodeType.PARAGRAPH, True)

for paragraph in paragraphs:
paragraph = paragraph.as_paragraph()
if paragraph.paragraph_format.style.name == style_name:
paragraphs_with_style.append(paragraph)

return paragraphs_with_style

現(xiàn)在我們準(zhǔn)備好使用這些方法并從 Word 文檔中提取文本。

在 Word 文檔中的段落之間提取文本

讓我們看看如何在 Word DOCX 文檔的兩個段落之間提取內(nèi)容。以下是在 Python 中執(zhí)行此操作的步驟。

  • 首先,使用Document類加載 Word 文檔。
  • 使用Document.first_section.body.get_child(NodeType.PARAGRAPH, int, boolean).as_paragraph()方法將開始和結(jié)束段落的引用獲取到兩個對象中。
  • 調(diào)用extract_content(startPara, endPara, True)方法將節(jié)點提取到對象中.
  • 調(diào)用generate_document(Document, extractNodes)輔助方法來創(chuàng)建包含提取內(nèi)容的文檔。
  • 最后,使用Document.save(string)方法保存返回的文檔。

以下代碼示例展示了如何在 Python 中提取 Word 文檔中第 7 段和第 11 段之間的文本。

# Load document.
doc = aw.Document("Extract content.docx")

# Define starting and ending paragraphs.
startPara = doc.first_section.body.get_child(aw.NodeType.PARAGRAPH, 6, True).as_paragraph()
endPara = doc.first_section.body.get_child(aw.NodeType.PARAGRAPH, 10, True).as_paragraph()

# Extract the content between these paragraphs in the document. Include these markers in the extraction.
extractedNodes = extract_content(startPara, endPara, True)

# Generate document containing extracted content.
dstDoc = generate_document(doc, extractedNodes)

# Save document.
dstDoc.save("extract_content_between_paragraphs.docx")
在 Word 文檔中不同類型的節(jié)點之間提取文本

您還可以在不同類型的節(jié)點之間提取內(nèi)容。為了演示,讓我們提取段落和表格之間的內(nèi)容并將其保存到新的 Word 文檔中。以下是執(zhí)行此操作的步驟。

  • 使用Document類加載 Word 文檔。
  • 使用Document.first_section.body.get_child(NodeType, int, boolean)方法將起始節(jié)點和結(jié)束節(jié)點引用到兩個對象中。
  • 調(diào)用extract_content(startPara, endPara, True)方法將節(jié)點提取到對象中。
  • 調(diào)用generate_document(Document, extractNodes)輔助方法來創(chuàng)建包含提取內(nèi)容的文檔。
  • 使用Document.save(string)方法保存返回的文檔。

以下代碼示例展示了如何在 Python 中提取段落和表格之間的文本。

# Load document
doc = aw.Document("Extract content.docx")

# Define starting and ending nodes.
start_para = doc.last_section.get_child(aw.NodeType.PARAGRAPH, 2, True).as_paragraph()
end_table = doc.last_section.get_child(aw.NodeType.TABLE, 0, True).as_table()

# Extract the content between these nodes in the document. Include these markers in the extraction.
extracted_nodes = extract_content(start_para, end_table, True)

# Generate document containing extracted content.
dstDoc = generate_document(doc, extractedNodes)

# Save document.
dstDoc.save("extract_content_between_nodes.docx")
根據(jù)樣式提取段落之間的文本

現(xiàn)在讓我們看看如何根據(jù)樣式提取段落之間的內(nèi)容。為了演示,我們將提取 Word 文檔中第一個“標(biāo)題 1”和第一個“標(biāo)題 3”之間的內(nèi)容。以下步驟演示了如何在 Python 中實現(xiàn)此目的。

  • 首先,使用Document類加載 Word 文檔。
  • 然后,使用paragraphs_by_style_name(Document, “Heading 1”)輔助方法將段落提取到一個對象中。
  • 使用paragraphs_by_style_name(Document, “Heading 3”)輔助方法將段落提取到另一個對象中。
  • 調(diào)用extract_content(startPara, endPara, True)方法并將兩個段落數(shù)組中的第一個元素作為第一個和第二個參數(shù)傳遞。
  • 調(diào)用generate_document(Document, extractNodes)輔助方法來創(chuàng)建包含提取內(nèi)容的文檔。
  • 最后,使用Document.save(string)方法保存返回的文檔。

以下代碼示例展示了如何根據(jù)樣式提取段落之間的內(nèi)容。

# Load document
doc = aw.Document("Extract content.docx")

# Gather a list of the paragraphs using the respective heading styles.
parasStyleHeading1 = paragraphs_by_style_name(doc, "Heading 1")
parasStyleHeading3 = paragraphs_by_style_name(doc, "Heading 3")

# Use the first instance of the paragraphs with those styles.
startPara1 = parasStyleHeading1[0]
endPara1 = parasStyleHeading3[0]

# Extract the content between these nodes in the document. Don't include these markers in the extraction.
extractedNodes = extract_content(startPara1, endPara1, False)

# Generate document containing extracted content.
dstDoc = generate_document(doc, extractedNodes)

# Save document.
dstDoc.save("extract_content_between_paragraphs_based_on-Styles.docx")
結(jié)論

在本文中,您學(xué)習(xí)了如何使用 Python 從 MS Word 文檔中提取文本。此外,您還了解了如何以編程方式在 Word 文檔中相似或不同類型的節(jié)點之間提取內(nèi)容。因此,您可以在 Python 中構(gòu)建自己的 MS Word 文本提取器。此外,您可以使用文檔探索 Aspose.Words for Python 的其他功能 。如果您有任何問題,請隨時告訴我們。


歡迎下載|體驗更多Aspose產(chǎn)品

獲取更多信息請咨詢 或 加入Aspose技術(shù)交流群(761297826

標(biāo)簽:

本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn


為你推薦

  • 推薦視頻
  • 推薦活動
  • 推薦產(chǎn)品
  • 推薦文章
  • 慧都慧問
相關(guān)產(chǎn)品
控件
  • 產(chǎn)品功能:文檔管理
  • 源 碼:非開源
  • 產(chǎn)品編號:10564
  • 當(dāng)前版本:v25.8 [銷售以商家最新版為準(zhǔn),如需其他版本,請來電咨詢]
  • 開 發(fā) 商: ASPOSE 正式授權(quán)
  • ">Aspose.Words for .NET

    無需Microsoft Word也可在任何平臺上滿足Word文檔的一切操作需求。

    控件
  • 產(chǎn)品功能:文檔管理
  • 源 碼:非開源
  • 產(chǎn)品編號:10565
  • 當(dāng)前版本:v25.8 [銷售以商家最新版為準(zhǔn),如需其他版本,請來電咨詢]
  • 開 發(fā) 商: ASPOSE 正式授權(quán)
  • ">Aspose.PDF for .NET

    PDF文檔創(chuàng)建組件,無需Adobe Acrobat,也可以在任何平臺上操作PDF文檔。

    控件
  • 產(chǎn)品功能:文檔管理
  • 源 碼:非開源
  • 產(chǎn)品編號:11403
  • 當(dāng)前版本:v25.7 [銷售以商家最新版為準(zhǔn),如需其他版本,請來電咨詢]
  • 開 發(fā) 商: ASPOSE 正式授權(quán)
  • ">Aspose.Total

    Aspose.Total 能為.NET和JAVA應(yīng)用程序增加圖表、電子郵件、拼寫檢查、條碼、流程、文件格式管理等功能。

    控件
  • 產(chǎn)品功能:文檔管理
  • 源 碼:非開源
  • 產(chǎn)品編號:13368
  • 當(dāng)前版本:v13.8.1 [銷售以商家最新版為準(zhǔn),如需其他版本,請來電咨詢]
  • 開 發(fā) 商: E-iceblue 正式授權(quán)
  • ">Spire.Doc for .NET

    Spire.Doc for .NET 是一款專門對 Word 文檔進(jìn)行操作的 .NET 類庫。

    控件
  • 產(chǎn)品功能:文檔管理
  • 源 碼:非開源
  • 產(chǎn)品編號:13371
  • 當(dāng)前版本:v15.8.3 [銷售以商家最新版為準(zhǔn),如需其他版本,請來電咨詢]
  • 開 發(fā) 商: E-iceblue 正式授權(quán)
  • ">Spire.XLS for .NET

    Spire.XLS for .NET是專業(yè).NET Excel組件,快速完成對Excel各類編程操作

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级在线观看免费播放 | 麻花天美星空mv免 | 女人一级视频在线观看 | 色偷偷人人澡人人添老妇人 | 国产男女猛烈无 | 国产大片亚州一 | 国产欧美三级亚洲 | 国产日本欧美三区 | 精品国产网站在线免费观看 | 被黑人猛cao | 大地影视mv高清视频在线观看 | 91区国产福利在线观看午夜 | www.污污污在线观看 | 欧美v亚洲v日韩v最新在线 | 乱码精品一区二区三区四川人 | 日韩精品一区二区三区中文在线 | 久热最新精品视频在线观看 | 91精品国产欧美一区二区 | 极品美女在线观看国产一区 | 国产亚洲sss在线播放 | 亚洲午夜国产片在线观看 | 午夜性影院在线观看视频播放 | 日韩中文字幕在线第一页 | 国产v视频在线亚洲视频 | 91中文字幕在线观看 | 日韩亚洲欧美高清在线观看 | 57pao视频国产在线观看 | 日本三级韩国三级香港三级a级 | 国产精品多p对白交换绿 | 免费国产久在线视频 | 亚洲色一色噜一噜噜噜人与 | 欧美日韩国产一线天午夜秀场 | 国产色色色專業從事互動視頻 | 国产+人+综合+亚洲 国产v的在线观看 | 国产红亚洲视频日韩 | 高清免费国产传媒海量视频 | 欧美一区二区电影免费观看 | 国产自产在线观看 | 国产在线观看自拍日本 | 欧美精品成人一区二 | 国产91蜜臀精品对白在线播放 | 日本人与黑人做爰视频网站 | 国产99视频精品免 | 陪读麻麻张开腿让我爽了一夜 | 日本黄在线观 | 国产精品成人观看视频国产奇米 | 日韩十国产十欧美 | 敌伦交换一区二区三 | 91高清完整版在线观看 | 国产新人36 | 蜜桃视频一区二区三区在线观看 | 99ri国产在线| 一本之道在线观看不卡 | 国产精品va在线播放我和闺蜜 | 日韩精品视频在线观看 | 手机免费 | 91传媒在线 | 韩日午夜在线资源一区二区 | 国产女人精品在线直播 | 愉拍自拍一区首页 | 99re6国产精品免费播放 | 国产亚洲精品综合一区二区 | 欧美亚洲一二三区视 | 全网热播最新电影电视剧 | 精品午夜国产福利观看 | 在线视频一区二区三区三区不卡 | 成人自拍视频在 | 日本乱码伦电影 | 真人二十三式性视频(动) | 鲁丝片一区二区三区免费 | 国产小视频在线免费观看 | 日本亚洲黑人在线播放 | 国产又黄又大又粗又硬又猛樱花 | 俺去也短剧网 | 日本免费一区二区三区在线视频 | 色一情一乱一交一二三区 | 区三区夜色 | 边做边爱完整版免费视频播放 | 国产一区二区三区高清在线播放 | 韩国日本三级在线播放 | 国产99视频精品免费专区 | 成年人永久免费观看视频 | 日韩国产精品中文 | 国产香蕉国产精品偷在线观看 | 国产学生情侣偷 | 国产精品大片大片看大 | 在线看片免费人成视频手机观看 | 老女肥女熟国产在线视频网址 | 极速影院| google浏览器 | 国产精品电影在线观看 | 亚洲欧美日韩国产综合久 | 欧美乱片中文字幕 | 97噜色在线 | 欧美日韩一区不卡 | 91久国产在线观看电影 | 欧美国产日韩1区2区3区4区 | 亚洲国产欧美日韩一区二区在线 | 欧美不卡一卡二 | 在线日本看片免费人成视久网 | 国产高清视频在线播放 | 欧美国产日韩在线三区 | 国产自愉自愉免费精品 | 精品国产乱码一区 | 日本免费一区二区在线播放 | 日韩不卡精品在线观看 | 44极品视频在 | 欧美一区二区一 | 九九在线精品观看 | 免费视频精 | 一区二区三区中文字幕 | 精品福利片在线观看 | 国产成a人片在线观看视频99 | 原产国创精品 | a级免费在线a级播放 | 国产精品一二三 | 91精品福利自产拍在线 | 欧美激情视频在线免费观看 | 欧美一区二区在线观看 | 欧美日韩在线亚洲一区二区三区 | 欧美国产日韩在线播放成人 | 爱丫爱丫影院官网 | 国产精品中文字幕字幕在线 | 97视频国产中文字幕 | 男女性爱视频的完整版 | 日本一道综 | 精品免费国产一区二区三 | 日韩福利在线观看 | 国产女技师按摩在线观看 | 亚洲欧美日韩高清综合678 | 日韩欧美中文字幕一字不卡 | 国产精品社区在线观看 | 欧美日韩一区二区精品在线观看 | 欧美日韩一二三四区在线观看 | 99视频有精品视频在线观看 | 91制片厂丽莎 | 女人与公驹交酡全过程 | 97人伦色伦成人免费视频 | 91福利官网 | 国产精品18成人 | 日本护士喷 | 伊人色综 | 国产女主播在线观看免费观看 | 国产疯狂女同互磨高 | 国产不卡一区二区三区免费视频 | 精品免费一区二区三区在20 | 热门电影、电视剧、动 | 日本免费一区二区三 | 日本亚洲专区 | 视频一区二区在线 | 国产精品偷窥 | 日本高清一二三不卡区 | 国产亚洲玖玖玖在线观看 | 日本电影一区二区三区 | 日韩精品亚洲成本人专区电影 | 国产一区美女x视频网站 | 国产91精彩视频 | 免费观看亚洲人成网站 | 国产极品在线观看极品 | 国产精品偷窥熟女精品视频 | 乱码一二三入区口 | 日本欧美日韩视 | 九色99 | 精品一区二区三区国产视频 | 国产亚洲精品片 | 国产九一精品动漫在线观看 | 亚洲老女人精品老妇女 | 国产精品午夜片在线观看 | 日韩伦理视频在线观看 | 国产妇人成 | 亚洲激情午夜视频 | 日本啊在线观看 | 在线观看片免费人 | 一本精品一区二区在线观看 | 另类国产女同在线视频 | 国产v片在线播放免费观看大全 | 日本三级a毛黄特级 | 国产一区二区三区免费在线观看 | 亚洲成v人片在线观看www | 日韩视频中文字幕 | 日韩中文字幕视频 | 成年轻人视频免费视频 | 日韩欧美在线一区二区不卡 | 国产思思99re99在线观看 | 成人看片 | 豆国产94亚洲欧美 | 日韩视频一区二区在线观看 | 亚洲欧美日韩在线 | 国产在线欧美日韩一区二区 | 韩国福利影视一区二区三区 | 亚洲欧美综合一区二区三区黄大片 | 国产欧美日韩综合精品一区二区 | 国产精品女人一区 | 乱理伦片在线播放 | 免费追剧大全 | 成人亚洲网站 | 女人国产香 | 97午夜理伦片在线 | 国产自经典三级在线观看 | 在线成本人视 | 思思伊人| 欧美日韩一区二区三区精选 | 欧美日韩一级无毛 | 精品一区二区三区免费 | 色人阁五 | 九九热视频在线免费观看 | 水蜜桃国产在线观看免费视频 | 国产人成在线观 | 国产在沙发上午睡被强 | 午夜成人精品视频观看 | 成人拍拍拍免费视频网站 | 亚洲日韩国产一区二区三区在线 | 国产午夜亚洲第一 | 91产国在线观看动作片喷水 | 国产亚洲欧美日韩一区图片 | 欧美大片va欧美在线播放 | 日韩精品激情中文一区 | 91精品秘密秘在线观看 | 国产欧美日韩精品成人动态 | 成人欧美一区二区三区的电影 | 国产xxx| 国产亚洲欧美性爱 | 精品免费一区二区三区视频 | 日韩欧美中文亚洲高清在线 | 99热精品福利在线观看 | 女人18毛多水多 | 不卡无在线一区二区三区观 | 亚洲综合专区 | 日本动漫在线 | 国产美女一区二区丝袜美腿 | 国产精品每日更新在线观看 | 欧美a级片在线观看 | 国产欧美一区二区三区精品 | 亚洲天堂一区 | 国产欧美日韩免费一区二区 | 偷窥视频 | 国产精品黑色丝袜在线观看 | 国产亚洲一路线二路线高质量 | 国产日产精品视频 | 国产在在线播放桑拿按摩视频 | 国产精品电影久 | 日本一道在线播放高清 | 噼里啪啦影院大 | 日韩精品中文字幕高清在线 | 私人影视网 | 国语自产拍视频在线观看 | 欧美高清色高清在线观看 | 蜜柚视频在线观看免费完整 | 免费床戏全程无遮 | 国产大片特黄高清视频 | 国产一区二区三区高清在线观看 | 337p日本大胆欧美人术 | 国产欧美精品123区高清 | 精品理论片免费视频播放 | 午夜欧美福利 | 亚洲日本在线中文字幕 | 日本公与熄乱 | 国产一区二区三区在线播放 | 免费观看区一 | 国产精品天天看特色大片不卡 | 国产精品亲子乱子伦 | 国产精品一区二区97 | 免费无线乱码不卡一二三四 | 精品亚洲国产成v人片传媒 日本一本二本在线观看 | 日韩高清在线中文字带字幕 | 大地影院mv高清在线观看免费 | 国产香线蕉手机在线观看 | 欧美yw精| 欧美激情狂野变态xxxx视频 | 夜夜爽免费看 | 东京道一本热大交乱 | 尤物tv | 国产黄大片在线观看好吊色 | 国产又黄又 | 日韩精品一区二区三区观看 | 国产又爽又 | 亚洲制服国产一区二区三区 | 日韩高清在线观看一区二区三区 | 国语在线看免费观 | 傲盟下载 | 国产裸舞在线一区二区 | 国产精品国产精品国产专区不卡 | 果冻传媒视频电影 | 国语自产精品视频在线完整版 | 欧美精品亚洲 | 国产精品网国产播放视频 | 亚洲日本精品va中文字幕 | 日韩亚洲欧美亚洲一区二区 | 国产免费日本高清 | 国产欧美va天堂在线电 | 亚洲v欧美v日韩v国产v在线 | 免费成人激情在线 | 亚洲欧美v视色一区二区 | 噼里啪啦影院大 | 国产精品va在线观看不 | 国产乱ⅴ一区二区三区 | 国产在线欧美一区二区 | 国产欧美亚洲一级a在线观看 | 国产精品第一页在线观看 | 日韩成人免播放器在线视频 | 91精品导航在线观看 | 九九自拍视频 | 夫妇交换性3中文字 | 国产尤物在线视精品在亚洲 | 午夜亚洲国产理论片秋霞 | 国产又色又爽 | 精品精品 | 日本中文字幕有码在线视频 | 国产一卡2卡3卡4 | 91香蕉国 | 欧美码一区二区三区 | 国产免费公开手机在线 | 男人的j| 亚洲人成免费网站 | 精品外国呦系列在线观看 | 国产精品不卡a∨在线观看 人片在线观看www | 乱码视频午夜间在线观看 | 国产主播在线观看不卡 | 中文字幕欧美激情 | 国产精品短篇二区 | 探花视频在线观看 | 最新日韩午夜一区二区 | 精品h一区不卡免费视频国产 | 亚洲色偷偷偷综合网另类小说 | 国产精品一区在线观看 | 欧美日韩中文有 | 国产在线高清网址导航 | 国产亚洲精品hd网站 | 陪读麻麻张开腿让我爽了一夜 | 中文字幕精品视频第一区第二区 | 亚洲视频国产精品 | 69精品人人人人人人人人人 | 国产乱码一卡二卡3卡四卡 国产精品视频每日更新播放 | 国产在线观看免费观看不卡 | 午夜国产精品看片 | 私人影院午夜在线观看 | 国产精品偷伦费观看电影 | 亚洲丝袜一区二区 | 中文字幕国产欧美 | 91免费视| 国产向日葵视频在线观看 | 网友自拍视频一区二区三区 | 国产在线精品免费一区二区三区 | 国语自产偷拍精品视频偷最新 | 日本视频在线免费 | 国产欧美精品日韩 | 成人色综合 | 91一区二区午夜免费 | 欧美亚洲日本国产综合网 | 性欧美精品一区二区三区在线播放 | 国产中文字幕精品在线观看 | 精品亚洲中文免费 | 亚洲熟伦熟女新五十路熟 | 国产免费一区二区三区香蕉精 | 91精品欧美产品免费观看 | 国产亚洲sss在线播放 | 伦理秋霞电影网 | 日本一区二区更新不卡 | 免费午夜一级高清免费看 | 小苹果www在线 | 国产偷p视频 | 亚洲日韩色在 | 亚洲v日韩v欧美高清在线观看 | 免费高清资源等你来享 | 强伦轩一区二区三区四区播放方式 | 精品国产拍国产天天人 | 国产国产人免费观看在线视频 | 好吊操视频这里只有精品 | 性生生活12分钟免费 | 国产拍揄自揄免费观看 | 99爱第一视频在线观看 | 国产精品色一区二区三区 | 亚洲欧美日韩国产综合点此进入 | 精品国产a | 国产日本欧美一区二区第一页 | 亚洲精品一区二区三区人妖 | 中文乱伦综合高清 | 777国产偷窥盗摄精品品在线 | 国产精品国产午夜免费看福利 | 性生大片免费观看性 | 日本中文字幕在线 | 亚洲一区二区三区香蕉下载 | 巨爆中文字幕乳爆区巨爆 | 日韩高清网 | 国产玉足脚交极品在线 | 欧美精品1区2区 | 亚洲欧美综合一区二区三区黄大片 | 国产suv精 | 国产激情综合在线视频 | 国产女网红亚洲精品 | 欧美日韩高清不卡一区二区三区 | 两个人看的视频在线观看 | 国产大片91精品免费观看不卡 | 51精产国品一二三产区区 | 欧美日韩人美精品一区在线 | 在线观看精品国产福利片app | 亚洲的一区二区精品 | 国产亚洲欧美精品一区二ti | 亚洲au秘一区二区三区 | 国产精品三级一区二区 | 国产高清在线精品一区小说 | 老司机污污网站 | 国产精品免费观看 | 国产精品中文字幕在线观看 | 香蕉亚洲精品网站国产一二三四 | 欧美亚洲国产丝袜在线 | 欧洲高清视频在线 | 日本日本乱码伦视频在线观看 | 91社区在线观 | 国产精品自产拍在线观看一 | 99视频.com| 亚洲综合色一区二区三区 | 国产一区精品自拍 | 国产又黄又爽又猛的免费视频播放 | 亚洲男人的天堂在线播放 | 国产精品丝袜一区二区三区 | 日本三级网址狠狠 | 欧美片亚洲片日韩片 | 国产精品网站永久免费99 | 欧美无砖专区一中文字幕 | 99re热视频这里只有综合亚洲 | 国产伦精品一区三区视 | 亚洲开心婷婷中文字幕一区 | 精品视频日韩一区二区三区 | 亚洲五码中文字幕 | 国产精品进线69影院在线 | 欧美黑人巨大xxxx | 日韩欧国产精 | 午夜高清性色生活片 | 区二区免费网站 | 国产亚洲欧洲国产综合一区 | 亚洲精品天堂在线 | 99re热视频这里只有综合亚洲 | 99玖玖爱视频在线观看 | 日韩专区在线播放 | 国产人成综合精品亚洲 | 精品欧美一区二区vr | 韩国日本亚洲欧洲一区二区三区 | 国产成年人免费在线观看 | 日本国产最新一区二区三区 | 日韩视频第1 | 国产欧美成| 日韩一区二区在线观看视 | 精品一区二区三区视频日产 | 射精专区一区二区朝鲜 | 91天堂国产在线播放 | 国产资源精品一区二区免费 | 亚洲日韩精品欧美一区二区 | 99视频精品国在线视频艾草 | 精品综合在线日韩 | 欧美日韩亚洲高清国产 | 国产在线一91区免费国产91 | 欧美图区 | 91干逼 | 欧美色欧洲免费无线码 | 精品国产污网站在线观看15 | 国产一区二区三区四区精 | 欧美日韩视频在线一区二区 | 日韩一本之道一 | 亚洲欧洲电影一 | 国产在线精品99一区不卡 | 精品一区二区三区高清免费观看 | 91直播在线观看免费 | 成人午夜又粗又硬又长 | 午夜亚洲国产精品福利在线 | 国产一区二区在线免费 | 中文在线资源天堂www | 亚洲韩精品欧美一区二区三区 | 精品一区二区不卡国产 | 欧美日韩中文国产一区发布 | 国产福利91精品一区二区 | 秋霞人成在线观看免费视频 | 国产日韩精品在线播放 | 欧美三级在线观看国产 | 国产精品综合一区 | 国产高清在线视频伊甸园 | 丝袜国产精品视频二区 | 成人欧美一区二区三区黑人免费 | 国产精成人品日日拍夜夜免费 | 欧美中文字幕乱码视频 | 日韩亚洲欧美综合一区 | 一级女性全黄生活片免费 | 福利片午夜免费观着 | 亚洲精品男女视频在线 | 日韩中文字幕视频 | 欧美日韩加勒比精品一区 | 亚洲色偷偷综合亚洲 | 77影视网| 日本中文字幕网址 | 日韩阿v高清视频在线观看 国产不卡高清 | 看黑人巨大精品欧美一区 | 国产精品综合色区在线观看 | 日韩精品成人一 | 成人h网 | 99国产在线线| 欧美巨大黑人极品hd | 国产精品网站 | 四川妇女bbbwbbbwm村妓 | 秋霞影视免费播放手机版 | 另类癖好| 区视频在线观看 | 国产精品第1页在线观看 | 国产亚洲精在线观看不卡 | 成人热色戒 | 成年站免费网 | 免费成人激情在线 | 欧美成一级做在线观看 | 亚洲欧美综合高清在线 | 欧美日韩亚洲国产一 | 强奷乱码中文字幕熟女一 | 国产深夜在线免费观看 | 国产精品网红尤物福利在线观看 | 国产精品盗摄一区二区在线 | 日韩精品三区 | 在线日本有码中文字幕 | 国产精品部在 | 国产专区极品销售在线 | 日韩在线中文字幕 | 亚洲jizzjⅰzz妇女 | 亚美影视免费在线观看 | 精品日韩欧美在线 | 久爱免费观看在线网站 | 欧美一区日韩二区在线观看 | 日本高清专区一区二无线 | 日本污网站 | 午夜福免费福利在线观看 | 国产在线一卡2卡三卡4卡免费 | 电影在线观看免费 | 青青手机国产在线视频 | 91国语精品自产拍在线观看一 | 宅男在线永久免费观看 | 日韩精品在线免费观看 | 欧美乱妇高清乱码视频 | 91免费国产自产地址入 | 国产精品三区短视频 | 亚洲欧美综合 | 国产日本欧美高清免费区 | 真实国产日韩欧美全部综合视频 | 99热这里| 香蕉国产一区二区 | 国产日韩a在线观看免费视频 | 日本aa大片在线播放免费看 | 国产在线精品50页 | 日本三级香港三级人妇99 | 国产午夜成福利在线观看 | 日韩系新ww44ww | 好看的动画电影 | 日韩国产欧 | 精品一区二区三区高清免费观看 | 欧美折磨另类系列sm | igao在线视频社区 | 欧美三级一级在 | 精品多人p群 | 三年片在线观看免费 | 了解最新日韩精品 | 一区二区中文字幕在线 | 殴美一级性爱 | 小黄文污到你湿 | 韩国漂亮美女三级在线观看 | 老司机精品福 | 亚洲日本aⅴ精品一区二区在线 | 国产农村妇女精品一二区 | 女人成年网站在线观看 | 欧美乱大 | 国产高在线精品亚洲三区 | 私人家庭影院 | 欧美自拍另类欧美综合图片区 | 麻花视频在线观看电视剧锦镖人 | h的动漫在线观看亚洲一区 片免费看 | 中日韩国内精品视频 | 欧美日毛比比 | 免费人成年短视频在线观看网 | 亚洲欧美日韩一区中文字幕 | www亚洲一区 | 国产真实伦在线播放 | 日韩国产欧美精品综合二区 | 99日韩精品极品视频在线 | 日本三级在线播放 | 国产高清在线精品一区免费97 | 国产日本欧美亚洲精品视 | 在线欧美鲁香蕉94色 | 午夜福利一区二区三区在 | 国内精品乱码卡一卡2卡 | 日本中文字幕高清7 | 国产精品国内免费一区二区三区 | a级高清观看视频在线看 | 欧美精品一区二区在线观看 | 日韩高清?在线观看视频 | 国产在线观看91精品腿张开 | 流畅高清电视剧、电影、 | 韩国床戏激情戏裸戏 | 韩国午夜三级理论 | 日韩一本二本在线观看视频 | 中文字幕精品一区二区精品 | 农村妇女偷汉视频过程 | 日韩精品在线一区二区 | 日本不卡免费中文字幕一 | 欧美国产日本韩在线 | 精品真实国| 成人妇女免费播放 | 不要播放器看在线播放a国产 | 免费h在线观看视频网站 | 欧亚尺码专线欧洲b1b1 | 为您呈现最新最热的电影力作 | 微博网红户外露出在线观看 | 国产精品va尤物在 | 日本欧美视频在线观看三区 | 小草青青手机免费视频影院 | 二区视频在线观看 | 日韩综合第一页 | 日韩在线视频观看 | 免费国产a | 国产日韩| 成年站免费网 | 朋友的妈妈在线观看 | 国产午夜福利片在线播放 | 精品国产午夜福利在线观看 | 国产网红情景剧在线观看 | 国内外成人激情免费在线视频 | 国产中文字幕不卡在线观看 | 99九九精品国产高清自在线 | 日本爽爽爽爽爽爽免费视频 | 成人午夜爽爽 | 成年轻人网站免费视频 | 绿巨人视频在线观看www | 国产欧美一区二区三区精品 | 视频一区视频二区在线观看 | 最新一卡二卡 | 国产精品广西柳州莫菁泽译网 | 国产在线精品一区精品 | 久热爱精品视频在线 | 日韩视频中文字幕视频一 | 国产91尤物中文在线 | 国产免费一区二区三区在线看 | 国产精品视频网站456 | 韩国三级精品 | 欧美激情视频国产二区 | 国产精品国产一级按摩a√ 日韩精品专区在线影 | 人人曰人人 | 国产高清在线a免费视频观看 | 国产asmr一区二 | 国产人妖专区视频在线一区 | 国产精品自产精品在线观看 | 国产热久 | 国产伦精品一区二区三视频 | 亚洲国产在人线播放 | 免费成人www视频在线观看 | 国产精品不卡a∨在线观看 人片在线观看www | 日韩影院 | 欧美伦理一区二区 | 精品欧美aⅴ一区二区三区视频 | 日本中文字 | 国产福利在线观看片 | 国产超级在线视频观看 | 日韩精品欧美在线成人 | 欧美日韩亚洲中文字幕吗 | 不卡中文字幕系 | 九九免费精品视频 | 绿巨人视频app官网 国产一区二区在线视频观看 | 国产合集在线播放 | google浏览器| 国产高清免费观看视频 | 在线欧美日韩国产 | 欧美亚洲人成在线综合 | 精品国产插穴精品网站日本 | 国色天香在线视频www | 日韩精品免费在线观看 | 精品一区二区免费视频a | 国产亚洲精品福利片 | 日韩亚洲精品在线播放 | 精品日本免费一区二区三区 | 日韩精品在线免费观看 | 国产精彩亚洲中文在线 | 国内精品视频成人一区 | 国产私人视频在线播放 | 亚洲精品伊人 | 日韩在线一区二区三区免费视 | 欧美激情首页 | 伦理电影网址 | 手机在线观 | 在线观看国产精品一区 | 国产欧美丝袜在线二区 | 国产在线视频福利资源站 | 国产一区二区色淫 | 国产在线播放成人免费 | 日本高清二区 | 日韩欧美国产aⅴ另类 | 精品国产亚洲人成在线观看 | 国语自产偷拍精品视频偷97 | 国产激情澎湃视频在线观看 | 免费精品一区二区三区第35 | 自拍亚洲一区欧美另类尤物 | 国产亚洲欧美在线观看三区 | 伦理片午夜视频在线观看免费 | 国产乱子伦精品免费视频 | 亚州精品一区中文字幕乱码 | 女人被黑人巨大进入 | 久青草国产高清在线视频 | 国产日韩一区二区三区在线播放 | 国产在线看片免费人成视频97 | 中文字幕免 | a加勒比一本东京 | 欧美国产日韩另类综合一区 | 国产最新精品自产在线观看 | 亚洲国产精品欧美日韩一区二区 | 国产又爽又| 成人精品一区二区户外勾搭野 | 日本a级网站在线观看 | 成全影院大全在线观看国语 | 国产精品一区二区电影 | 国产天堂在线丝袜一区 | 国产亚洲高清不卡在线 | 日本免费a级毛一片没码 | 99热这里只有精品国产首页 | 国产91精品免费专区 | 清纯唯美亚洲 | 国产精品h在| 日韩一区二区在线观看视 | 北京国贸大酒店张津 | 日本阿v片在线 | 成人欧美日韩在线网址观看 | 99爱精品视频 | 亚洲91精品 | 日本a优不卡在线播放 | 男人j进女人 | 二区三区欧美精品在线观看 | 三级视频网 | 免费精品国产自产拍观看 | 国产精品线在线精品 | 国产精品毛多多 | 亚洲经典一区二区三区爱妃记歌词 | 91po国产在线精品免费观看 | 粗暴进入娇 | 欧美性狂猛xxxxx深喉 | 国产精品成人a在线观看 | 星空天美麻花视频大全 | 成人国产综合三级 | 国产精品爱草草视频 | 欧美巨大巨粗黑人性aaaaaa | 国产欧美日韩综合一区在线 | 日韩欧美一区二区三区国产 | 国产欧色美视频综合二区 | 欧美性爱在线 | 国产性爱精品家庭乱伦视频 | 91免费国产自产地址入 | 最新热播电影 | 国产美女一区二区在线观看 | 欧美jizzhd精品欧美巨大 | 国产精品亚洲综合一区在 | 草莓社区在线视频 | 亚洲色偷精品一区二区三区 | 玩成熟老熟女视频 | 日本亲近相奷中文字幕 | www在线免费观看视频 | 日韩在线一区二区三区观看 | 最新一区二区三区免费看 | 日本www在线视频 | 国色天香社区视频手机免费 | 国产a∨精品一区二区三区不 | 国产乱码伦精品一区二区三区 | 精品国产免费一区二区三区香蕉 | 亚洲日本一区二区三区在线不卡 | 这里只有精品在线观看视频 | 国产精品女同一区二区在线 | 亚洲日本中文字幕乱码在线电影 | 日本特黄特黄aaaaa大片 | 日韩视频在线免费 | 成人一区二区三区高清视频 | 国产偷国产偷亚洲高清人 | 精品亚洲欧美v国产一 | 99精品视频在线观看免费播放 | 欧美黑粗特黄午夜大片 | 成人级片中文字幕在线播放 | 丰满的继坶3中文在线观看 福利国产精品 | 91欧美在线视频 | 亚洲欧美综合一区二区三区黄大片 | 337p亚洲日本中国大胆 | 高清午夜福利电影在线 | 中国老妇 | 欧美最猛黑人xxxx黑人猛交 | 国产一区二区在线不卡 | 国产精品日韩免费看 | 国产在线精品一区二区在线看 | 日韩中文精品视频 | 午夜福利不卡片在线播放免费 | 精品一线天学生在线观看 | 国产最新精品自产在线 | 国产欧美日韩主播 | 日本免码va在 | 精品一区二区三区在线观看视 | a级日本乱理伦片免费入口: | 国产综合一区二区三区 | 手机国产视频福利 | 国产欧美日韩一区二区三区 | 欧美日韩高清不卡 | 精品网站不卡 | 亚洲国产日韩不卡线欧美 | 日韩一区二区欧美精品 | 免费人成视网站在线不卡 |