午夜视频免费看_日韩三级电影网站_国产精品久久一级_亚洲一级在线播放_人妻体内射精一区二区三区_91夜夜揉人人捏人人添红杏_91福利在线导航_国产又粗又猛又黄又爽无遮挡_欧美日韩一区在线播放_中文字幕一区二区三区四区不卡 _日日夜夜精品视频免费观看_欧美韩日一区二区三区

主頁 > 知識庫 > python3+telnetlib實現(xiàn)簡單自動測試示例詳解

python3+telnetlib實現(xiàn)簡單自動測試示例詳解

熱門標(biāo)簽:外呼并發(fā)線路 長沙高頻外呼系統(tǒng)原理是什么 百度地圖標(biāo)注沒有了 西藏房產(chǎn)智能外呼系統(tǒng)要多少錢 地圖標(biāo)注審核表 ai電銷機器人源碼 湛江智能外呼系統(tǒng)廠家 宿遷星美防封電銷卡 ai電話機器人哪里好

1 telnetlib介紹

 1.1 簡介

官方介紹文檔:telnetlib – Telnet 客戶端 — Python 3.9.6 文檔

telnetlib 模塊提供一個實現(xiàn)Telnet協(xié)議的類 Telnet。

1.2 庫常用函數(shù)及使用

1.2.1 建立連接

建立連接有兩種方式:1、實例化函數(shù)的時候,將可選參數(shù) host 和 port 傳遞給構(gòu)造函數(shù),在這種情況下,到服務(wù)器的連接將在構(gòu)造函數(shù)返回前建立。2、使用telnetlib.Telnet類的open函數(shù)建立連接。

如以下兩種方式是等同的,參數(shù)timeout表示阻塞的時間(單位為秒),默認(rèn)為一直阻塞:

import telnetlib

HOST = "10.102.1.12"
#方式1
tn = telnetlib.Telnet(HOST, port=21, timeout=10)

#方式2
tn = telnetlib.Telnet()
tn.open(HOST, port=21)

1.2.2 發(fā)送命令

發(fā)送命令使用的是Telnet類的write方法,注意參數(shù)buffer是字節(jié)字符串byte string,網(wǎng)絡(luò)數(shù)據(jù)傳輸都是使用的byte string,也就是字節(jié)流,在發(fā)送的字符串前面加一個b,就可以將字符串轉(zhuǎn)換為字節(jié)流。

Telnet.write(buffer)

例如,發(fā)送一個“exit”命令給服務(wù)器,也就是退出telnet連接。

tn.write(b"exit\n")

1.2.3 讀取返回數(shù)據(jù)

Telnet類提供的讀取返回結(jié)果的函數(shù)比較多,這里列舉3個:
Telnet.read_until(expected, timeout=None) 讀取直到遇到給定字節(jié)串 expected 或 timeout 秒已經(jīng)過去。默認(rèn)為阻塞性的讀。

Telnet.read_all() 讀取數(shù)據(jù),直到遇到 EOF;連接關(guān)閉前都會保持阻塞。

Telnet.read_very_eager() 在不阻塞 I/O 的情況下讀取所有的內(nèi)容(eager)。

1.2.4 關(guān)閉連接

關(guān)閉telnet連接直接使用Telnet.close()函數(shù),或者發(fā)送"exit"命令,以下兩種用法是一樣的。

tn = telnetlib.Telnet()
#方式1
tn.close()
#方式2
tn.write(b"exit\n")

1.3 使用示例

首先,我們先使用IPOP創(chuàng)建一個FTP服務(wù),端口為21,用戶名為admin,密碼為admin。

然后,編寫一個簡單的測試用例,連接telnet服務(wù)器,然后退出。

import getpass
import telnetlib

HOST = "10.102.1.12"
user = input("Enter your remote account: ")
password = getpass.getpass()

tn = telnetlib.Telnet(HOST, port=21, timeout=10)

tn.write(user.encode('ascii') + b"\n")
if password:
    tn.write(password.encode('ascii') + b"\n")

print(tn.read_very_eager().decode('ascii'))

tn.write(b"exit\n")

print ("exit")

直接執(zhí)行,結(jié)果如下,可以看出,連接了一次telnet服務(wù)器,然后退出了:

2 自動測試

參考代碼:Python3+telnetlib實現(xiàn)telnet客戶端 - 諸子流 - 博客園 (cnblogs.com)

先簡單說明代碼實現(xiàn)的功能,首先先運行一個程序,這個程序會創(chuàng)建一個telnet服務(wù);然后使用python編寫一個telnet客戶端,連接telnet服務(wù),并輸入命令,獲取命令返回結(jié)果,根據(jù)結(jié)果來判斷命令是否執(zhí)行正確。

命令及期望結(jié)果:命令和期望的結(jié)果存放在excel中,期望結(jié)果用來從命令的返回數(shù)據(jù)中進(jìn)行字符串查找的,如果找到了,表示命令執(zhí)行成功,否則認(rèn)為執(zhí)行失敗。格式如下:

執(zhí)行失敗結(jié)果保存:如果命令執(zhí)行失敗,則將命令和得到的返回數(shù)據(jù)存放到一個單獨的文件中。

下面說明代碼目錄結(jié)構(gòu):

1078885-20210817232240481-1025625638

C_parse_excel.py類用于解析excel,獲取命令及返回結(jié)果:

# -*- coding: utf-8 -*-

import os
import sys
import re
import xlrd
import logging

logging.basicConfig(level=logging.NOTSET, format='[%(filename)s:%(lineno)d]-%(levelname)s %(message)s')


class CCsrConfig(object):

    def __init__(self, excelName):
        self._registerDict = {}
        self._excelName = excelName

    def OpenExcel(self):
        if self._excelName == "":
            self._excelName = None
        else:
            self._excelfd = xlrd.open_workbook(self._excelName)
            for sheetName in self._excelfd.sheet_names():
                pass

    def ReadCSRCfg(self):
        return_dict = {}  #{sheetName: [cmdlist]}
        for sheetName in self._excelfd.sheet_names():
            tmp_list = []
            sheet = self._excelfd.sheet_by_name(sheetName)
            if None != sheet:
                if sheet.nrows == 0:  # no content
                    continue
            sheetName = str(sheetName.strip()).lower()
            logging.debug(sheetName)
            row_start = 0
            for row in range(sheet.nrows):
                if sheet.cell(row, 0).value.strip() == u"command":
                    row_start = row + 1
                    break
            for row in range(row_start, sheet.nrows, 1):
                cmd = str(sheet.cell(row, 0).value).strip()
                exp_ret = str(sheet.cell(row, 1).value).strip()
                tmp_list.append([cmd, exp_ret])
            return_dict[sheetName.lower()] = tmp_list
        return return_dict

C_telnet.py類實現(xiàn)telnet連接,以及發(fā)送命令和獲取結(jié)果,并解析結(jié)果信息:

# -*- coding:utf-8 -*- 

import logging
import telnetlib
import time

class TelnetClient():
    def __init__(self,):
        self.tn = telnetlib.Telnet()

    # 此函數(shù)實現(xiàn)telnet登錄主機
    def login_host(self, host_ip, remote_port, username, password):
        try:
            self.tn.open(host_ip, port = remote_port)
        except:
            logging.warning('%s網(wǎng)絡(luò)連接失敗' % host_ip)
            return False
        # 等待login出現(xiàn)后輸入用戶名,最多等待10秒
        self.tn.read_until(b'login: ', timeout=2)
        self.tn.write(username.encode('ascii') + b'\n')
        # 等待Password出現(xiàn)后輸入用戶名,最多等待10秒
        self.tn.read_until(b'Password: ', timeout=2)
        self.tn.write(password.encode('ascii') + b'\n')
        # 延時兩秒再收取返回結(jié)果,給服務(wù)端足夠響應(yīng)時間
        time.sleep(2)
        # 獲取登錄結(jié)果
        command_result = self.tn.read_very_eager().decode('ascii')
        if 'Login incorrect' not in command_result:
            logging.debug(u'%s登錄成功' % host_ip)
            return True
        else:
            logging.warning(u'%s登錄失敗,用戶名或密碼錯誤' % host_ip)
            return False

    def start_test_cmd(self, cmd_dict):
        for sheet_item in cmd_dict:
            for sheet in sheet_item:
                cmd_list = sheet_item[sheet]
                tmp_err_list = []
                for cmd in cmd_list:
                    cmd_in = cmd[0]
                    exp_ret = cmd[1]
                    self.tn.write(cmd_in.encode('ascii')+b'\n')
                    time.sleep(1)
                    # 獲取命令結(jié)果
                    command_result = self.tn.read_very_eager().decode('ascii')
                    if command_result.find(exp_ret) == -1:
                        tmp_err_list.append([cmd_in, command_result])
                    else:
                        print('%s' % command_result)

                if len(tmp_err_list) != 0:  # 將錯誤信息記錄到文件中
                    with open("./out_file/%s_err_log.txt" % sheet, "w+", newline="") as f:
                        for err_item in tmp_err_list:
                            logging.debug(err_item[0])
                            f.write("%s" % err_item[0])
                            f.write("%s" % err_item[1])

    # 退出telnet
    def logout_host(self):
        self.tn.write(b"exit\n")

main_func.py是主函數(shù)入口:

# -*- coding:utf-8 -*- 

import logging
import os
import sys
from C_telnet import *
from C_parse_excel import *

Host_ip = '192.168.17.128'
Username = 'admin'
Password = 'admin'
Remote_port = 8000

def parse_cmd_excel(dir_name):
    objList = []
    list_f = os.listdir(dir_name)
    for item in list_f:
        item = dir_name + item
        if os.path.isfile(item) and (item[-5:] == '.xlsx' or item[-5:] == '.xlsm'):
            if item.find("$") != -1:
                continue            
            csrConfig = CCsrConfig(item)
            csrConfig.OpenExcel()
            tmp = csrConfig.ReadCSRCfg()
            objList.append(tmp)
        elif os.path.isdir(item):
            item = item + '/'
            new_obj_list = []
            new_obj_list = parse_cmd_excel(item)
            for each in new_obj_list:
                objList.append(each)
                
    return objList

if __name__ == '__main__':
    # 從表格中獲取測試的命令
    all_cmd_dict = {}
    all_cmd_dict = parse_cmd_excel("./src_file/")

    #啟動telnet客戶端連接,并進(jìn)行測試
    telnet_client = TelnetClient()
    if telnet_client.login_host(Host_ip, Remote_port, Username, Password) == False:
        print("Telnet disconnected!\n")
    else:
        telnet_client.start_test_cmd(all_cmd_dict)
        telnet_client.logout_host()

這樣就能實現(xiàn)一個簡單的自動測試命令的方式。

到此這篇關(guān)于python3+telnetlib實現(xiàn)簡單自動測試的文章就介紹到這了,更多相關(guān)python3 telnetlib自動測試內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 如何在Python3中使用telnetlib模塊連接網(wǎng)絡(luò)設(shè)備
  • python自動化運維之Telnetlib的具體使用
  • 使用python telnetlib批量備份交換機配置的方法

標(biāo)簽:林芝 盤錦 普洱 南平 海南 漯河 大同 寧夏

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python3+telnetlib實現(xiàn)簡單自動測試示例詳解》,本文關(guān)鍵詞  python3+telnetlib,實現(xiàn),簡單,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python3+telnetlib實現(xiàn)簡單自動測試示例詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于python3+telnetlib實現(xiàn)簡單自動測試示例詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    无码精品人妻一区二区| 国产av一区二区三区传媒| www亚洲国产| 水蜜桃一区二区| 国产伦精品一区二区三区视频免费 | 亚洲一区三区电影在线观看| 午夜精品一区二区三区四区 | 国产精品免费小视频| 欧美一级视频一区二区| 日韩免费在线免费观看| 国产精品久久久久91| 91在线观看免费高清| 91网在线免费观看| 久久国产精品精品国产色婷婷| 久久精品一区二区三区不卡免费视频| 蜜桃成人在线| 一级一片免费播放| 久久久亚洲精品无码| 色一情一乱一伦一区二区三区日本| 久久婷婷国产精品| 日本55丰满熟妇厨房伦| 在线免费看黄视频| 成人欧美一区二区三区黑人一| 小泽玛利亚一区| 人人干人人干人人干| 精品人妻无码一区二区| 麻豆久久久久久| 国产麻豆成人精品| 国产色产综合色产在线视频| 亚洲精品视频自拍| 欧美日韩欧美一区二区| 国产一区二区三区高清在线观看| 久久人人爽亚洲精品天堂| 青草青草久热精品视频在线网站| 成人蜜桃视频| 中文字幕第三页| а√中文在线资源库| 国产成人综合在线观看| 亚洲精品免费视频| 精品久久一区二区| 久精品免费视频| 亚洲精品欧美日韩专区| 中文字幕日韩精品久久| 午夜性福利视频| 91麻豆免费视频网站| 伊人网视频在线| 成人免费观看av| 欧美日韩国产限制| 国产亚洲精品久久久优势| 日本在线观看天堂男亚洲| 日本福利视频导航| 亚洲欧美日韩偷拍| 91国产丝袜播放在线| 日本欧美韩国一区三区| 亚洲人精品一区| 精品国产1区二区| 国产91精品青草社区| 欧洲成人一区二区| 成人黄色一级大片| 草视频在线观看| 日本美女一区二区| 精品国产成人在线| 久热精品视频在线| 日韩高清av电影| 激情av中文字幕| 国产美女www爽爽爽| aa级大片欧美| 日韩西西人体444www| 国产高清在线不卡| 国产精品又粗又长| 国产探花在线视频| 日韩av电影免费观看高清完整版| 亚洲激情五月婷婷| 最近2019好看的中文字幕免费| 好吊色欧美一区二区三区四区 | 久久99精品视频| 欧美性猛交xxxx免费看| 国语自产偷拍精品视频偷 | 8090成年在线看片午夜| 国产盗摄视频在线观看| 日韩一区二区不卡视频| 久久99久久久欧美国产| 欧美人动与zoxxxx乱| 国产精品高清在线| 欧美精品性生活| 瑟瑟视频在线免费观看| 国产精品成人免费精品自在线观看 | 97久久精品人人做人人爽| 欧美精品一区二区在线播放| 久草一区二区| 精品国产精品国产精品| 久久夜色精品国产噜噜av| 久久精品国产欧美激情| 精品这里只有精品| 国产激情久久久久久熟女老人av| 色屁屁一区二区| 99九九视频| 91传媒免费观看| 国产欧美日韩激情| 午夜精品在线视频| 手机av在线网站| 蜜臀av一区二区三区| 日韩欧美一区二区在线视频| 91精品国产综合久久久久久蜜臀| 久久久久国产免费| 国产麻豆精品久久一二三| 亚洲欧洲一区二区三区久久| 在线观看成人免费| 伊人中文字幕在线观看| 亚洲综合清纯丝袜自拍| 成人黄色激情网| 成人性生交大免费看| 99国内精品久久| 欧美激情国内偷拍| 中文字幕亚洲日本| 日韩精品亚洲一区| 亚洲人成五月天| 亚洲爆乳无码专区| 日韩电影在线一区| 亚洲精品美女久久久久| 日韩 欧美 视频| 亚洲国产天堂久久国产91| 国产精品成人久久久久| 中文视频在线观看| av亚洲精华国产精华| 欧美极品少妇与黑人| 国产伦精品一区二区三区妓女下载 | 国产亚洲精品激情久久| 国产又大又黄又粗又爽| 韩国成人在线视频| 欧美成人激情在线| 亚洲欧美在线不卡| 国产欧美日韩卡一| 999热视频在线观看| 久热精品视频| 亚洲电影天堂av| 中文字幕国内自拍| 成人污污视频在线观看| 91夜夜未满十八勿入爽爽影院| 免费麻豆国产一区二区三区四区| 久久亚洲影视婷婷| 亚洲精品免费av| 好吊妞视频一区二区三区| 亚洲第一精品夜夜躁人人爽| 97视频在线免费| 久久 天天综合| 国产精品电影久久久久电影网| 香蕉视频在线观看黄| 亚洲第一主播视频| 亚洲成色www久久网站| 中文字幕+乱码+中文字幕一区| 在线观看免费视频国产| 一本色道久久88亚洲综合88| 国产免费视频一区二区三区| 综合久久国产| 91精品国产一区二区| 色av性av丰满av| 成人性生交大片免费看视频直播 | 国外成人在线播放| 另类小说综合欧美亚洲| www.com毛片| 日韩免费观看高清完整版| 欧美一区二区三区粗大| 国产精品入口福利| 色哟哟国产精品| 五十路在线观看| 中文字幕乱码一区| 国产一区福利视频| 51午夜精品国产| 国产免费无遮挡| 久久国产精品久久精品国产| 一区二区三区在线视频观看| 成人免费网站黄| 国产综合在线看| 看电视剧不卡顿的网站| 国产精彩免费视频| 欧美刺激午夜性久久久久久久| 在线视频观看一区二区| 日本大香伊一区二区三区| 国产资源中文字幕| 在线亚洲人成电影网站色www| 国产91在线播放九色| 亚洲va久久久噜噜噜| 久久久五月婷婷| 在线观看免费视频污| 久久亚洲精品一区| 国内精品免费**视频| 国产精品16p| 欧美视频一区在线| 久久狠狠亚洲综合| 久久精品波多野结衣| 日韩日韩日韩日韩日韩| 中文字幕在线看视频国产欧美在线看完整 | 中文字幕日韩精品有码视频| 狠狠色丁香久久婷婷综合丁香| 热这里只有精品| 国产网红主播福利一区二区| 国产精品333| 91成人在线观看喷潮| 蜜桃无码一区二区三区| 国产精品影片在线观看| 亚洲精品中文在线观看| 成人精品在线观看视频| 色综合天天狠天天透天天伊人 | 91亚洲精品久久久蜜桃网站| jizz国产在线| xxxx国产视频| 亚洲欧洲中文| 欧美乱大交做爰xxxⅹ性3| 欧美三片在线视频观看| 久久99精品国产麻豆不卡| www.国产视频.com| 中文字幕欧美日韩| 成人a区在线观看| 日本不卡一区二区在线观看| 久久久久久久久爱| 中文字幕一区在线| 久久久久久国产精品视频| 午夜精品理论片| 久久久精品五月天| 成人手机在线播放| 91久久精品午夜一区二区| 日本韩国欧美中文字幕| 欧美日韩性生活片| 777777777亚洲妇女| 国产成人亚洲综合a∨婷婷 | 亚洲人成在线免费观看| 日韩欧中文字幕| 久久久亚洲高清| 天天操天天爱天天干| 久久久久久久麻豆| 男人天堂999| 欧美中日韩一区二区三区| 亚洲第一区在线观看| 成人少妇影院yyyy| 成人黄色一级大片| 亚洲影视中文字幕| 亚洲第一av在线| 国产成人精品免费网站| 真人bbbbbbbbb毛片| 成人福利视频在线观看| 一区二区三区国产精品| 中文字幕免费在线观看视频| 欧美人妻一区二区三区| 国产成人a亚洲精v品无码| 国产午夜精品理论片a级探花| 精品中文字幕一区二区小辣椒| 欧美 日本 国产| 中文字幕久精品免| 亚洲一区二区三区不卡国产欧美| 在线观看亚洲一区二区| 黄色av电影网站| 在线观看污视频| 日本高清不卡一区二区三| 亚洲综合成人婷婷小说| 欧美在线视频免费| 45www国产精品网站| 亚洲人午夜精品| 欧美久久久久久蜜桃| 亚洲免费资源在线播放| 国产盗摄精品一区二区三区在线| 久久久香蕉视频| 日本77777| www.一区二区三区| 91国产视频在线播放| 亚洲综合在线免费观看| 久久久久久自在自线| 少妇激情一区二区三区视频| 日韩av成人在线观看| 欧美亚洲综合在线| 成人污视频在线观看| 久久国产尿小便嘘嘘| 香蕉污视频在线观看| 久久天天躁日日躁| 欧美精品成人一区二区三区四区| 国产精品一级片在线观看| 色老头一区二区| 大地资源第二页在线观看高清版| 亚洲国产免费av| 亚洲一级二级在线| 国产精品一二三在| 中文字幕激情视频| 少妇按摩一区二区三区| av在线无限看| 99三级在线| 亚洲精品国产欧美| 中国av一区二区三区| 国产成人a人亚洲精品无码| 一区二区在线中文字幕电影视频| 97高清免费视频| 欧美群妇大交群中文字幕| 成人免费视频一区| 国产一级特黄毛片| 精品国产aaa| 正在播放国产对白害羞| 久久久精品三级| 国产尤物99| 国产精品一区久久| 久久人体大胆视频| 99久久99久久精品国产片果冻 | 波多野结衣av在线观看| 波多结衣在线观看| 欧美亚州一区二区三区| 草民午夜欧美限制a级福利片| 8x8x8国产精品| 久久久久久久久一| 亚洲精品一区二区口爆| 国产99免费视频| 91ts人妖另类精品系列| 永久免费看片在线观看| 国产日韩精品一区观看| 欧美极品在线播放| 91精品国产综合久久久久久久久久 | 麻豆av免费在线| 免费看日本黄色| 天天综合久久综合| 成人伊人精品色xxxx视频| 97色在线观看免费视频| 欧美精品国产精品日韩精品| 欧美一区二区女人| 亚洲欧美欧美一区二区三区| 国产精品1024久久| 人妻丰满熟妇av无码区hd| 中文字幕亚洲精品在线| 亚洲精品国产精品国自产网站| 人妻少妇精品久久| 国产精品久久久久久久天堂第1集 国产精品久久久久久久免费大片 国产精品久久久久久久久婷婷 | 九九久久九九久久| 亚洲黄色一区二区三区| 欧美精品一区二区视频| 精品国产一区二区三区四区精华 | 波多野结衣家庭教师在线观看 | 欧美成人在线直播| 日韩欧美高清在线| 91 com成人网| 日韩欧美成人网| 久久亚洲免费视频| 国产盗摄精品一区二区三区在线| 少妇av在线播放| 日本黄色一区二区三区| 97精品人妻一区二区三区香蕉| 制服丝袜第一页在线观看| 国产免费视频传媒| 欧美激情国产精品日韩| 欧美 国产 综合| 超碰caoprom| 中文字幕一区二区三区手机版| 私库av在线播放| 欧美成人精品一区二区免费看片| 久久网中文字幕| 国产日韩在线免费观看| 日本成人一级片| 亚洲综合第一区| 国产男女无遮挡| 免费在线观看日韩视频| 狠狠热免费视频| 亚洲の无码国产の无码步美| 日日碰狠狠添天天爽| 国产一级特黄aaa大片| 国产精品xxxxxx| 一区二区乱子伦在线播放| 亚洲精品一区二三区| 亚洲精品男人天堂| 亚洲精品久久久久久久久久久久久久 | 精品电影在线观看| 中文字幕一区二区三区av| 99久久国产综合精品麻豆| 91麻豆国产精品久久| 国产欧美一区二区精品性| 日韩欧美在线中文字幕| 国产一区二区三区中文| 91精品久久久久久| 日本视频精品一区| 欧美v在线观看| 欧美色图校园春色| 国产性生活大片| 一级黄色大片免费| 2018天天弄| 国产免费观看av| 亚洲av无码专区在线| 国产在线观看一区二区| 97久久超碰国产精品电影| 欧美高清视频在线高清观看mv色露露十八 | 国产美女明星三级做爰| av激情亚洲男人天堂| 欧美精品乱人伦久久久久久| 亚洲国产天堂久久国产91| 91精品国产沙发| 国产精品日韩高清| 国产一区二区视频在线免费观看| 欧美性大战久久久久xxx | 夜夜亚洲天天久久| 亚洲国产精品久久精品怡红院| 国产性色av一区二区| 久久久久免费视频| 国产私拍一区| 国产中文字幕在线免费观看| 瑟瑟视频在线观看| 欧美亚洲另类小说| 91女厕偷拍女厕偷拍高清| 一级日本不卡的影视| 欧美系列日韩一区| www.色综合| 欧美日韩亚洲一区二区三区在线观看| 国产在线精品91| 男人女人拔萝卜视频| aa片在线观看视频在线播放| 夜夜爽8888| 久久精品一区二区| 欧美一级欧美三级|