99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

短視頻去水印小程序開(kāi)發(fā)全解析:從抓包調(diào)試到接口落地

短視頻去水印小程序開(kāi)發(fā)全解析:從抓包調(diào)試到接口落地 做短視頻去水印小程序這個(gè)項(xiàng)目最初只是因?yàn)槲易约好刻煲鎺资畻l短視頻素材手動(dòng)截圖錄屏實(shí)在折磨人。市面上的去水印工具要么收費(fèi)要么體驗(yàn)割裂網(wǎng)頁(yè)工具要復(fù)制鏈接來(lái)回跳轉(zhuǎn)App又要額外下載安裝。折騰了幾天之后我干脆把功能做進(jìn)微信小程序在對(duì)話框里復(fù)制視頻鏈接、點(diǎn)開(kāi)小程序就能解析保存全程不用跳出微信。這篇文章就圍繞這個(gè)“短視頻免費(fèi)去水印小程序”項(xiàng)目從技術(shù)原理、接口分析、抓包調(diào)試到完整實(shí)現(xiàn)把能落地的方案都攤開(kāi)講清楚。如果你正打算自己做一款短視頻輔助工具或者想搞懂小程序解析類功能的完整鏈路這篇應(yīng)該能讓你少走不少?gòu)澛?。先說(shuō)清楚這篇文章講的技術(shù)方案適用于學(xué)習(xí)研究、個(gè)人素材歸檔和內(nèi)容二次創(chuàng)作時(shí)的備用存檔不鼓勵(lì)拿去批量盜用他人原創(chuàng)內(nèi)容。做這類工具時(shí)要尊重平臺(tái)規(guī)則和內(nèi)容版權(quán)這一點(diǎn)后面也會(huì)專門(mén)提到。1. 項(xiàng)目概述與核心需求拆解1.1 “短視頻去水印”到底在解決什么問(wèn)題短視頻平臺(tái)在發(fā)布視頻時(shí)都會(huì)在畫(huà)面上渲染一層水印常見(jiàn)的是右下角的平臺(tái)標(biāo)識(shí)和用戶ID。這類水印在播放器和直播間里是動(dòng)態(tài)疊加的但最終下發(fā)的視頻文件里其實(shí)已經(jīng)烤進(jìn)去了。用戶保存下來(lái)的視頻只要經(jīng)過(guò)平臺(tái)官方“保存到相冊(cè)”功能出來(lái)的文件就帶著這層水印。去水印要做的事本質(zhì)上是拿到視頻的原始文件地址或者不帶水印的渲染版本而不是在畫(huà)面上做局部模糊或裁剪處理。局部處理治標(biāo)不治本要么傷畫(huà)質(zhì)要么遮擋內(nèi)容。真正高效的方案是從源頭下手用戶把視頻分享口令復(fù)制出來(lái)工具解析出視頻的真實(shí)播放地址再嘗試匹配無(wú)水印的源文件地址最后把文件抓下來(lái)。我接手這個(gè)項(xiàng)目的第一反應(yīng)是它看起來(lái)簡(jiǎn)單實(shí)際拆解需求時(shí)才發(fā)現(xiàn)有三個(gè)核心點(diǎn)要同時(shí)解決一是鏈接解析要快用戶從復(fù)制分享口令到開(kāi)始解析整個(gè)鏈路最好控制在3秒以內(nèi)二是兼容性要廣抖音、快手、視頻號(hào)、小紅書(shū)、B站等平臺(tái)的紅包口令、分享文案格式各不相同三是保存流程要順滑小程序里從解析到保存到相冊(cè)每一步都要符合微信的規(guī)范否則權(quán)限彈窗就能把用戶勸退。這三個(gè)點(diǎn)分別對(duì)應(yīng)接口逆向分析、多平臺(tái)適配和小程序原生能力調(diào)用這也是整篇文章的主線。1.2 為什么選擇小程序形態(tài)做工具類產(chǎn)品形態(tài)選型基本繞不開(kāi)網(wǎng)頁(yè)、App、小程序三選一。我見(jiàn)過(guò)很多人一上來(lái)就做網(wǎng)頁(yè)版理由是開(kāi)發(fā)快但網(wǎng)頁(yè)版在手機(jī)上解析完還要手動(dòng)跳轉(zhuǎn)瀏覽器下載短視頻用戶又是典型的“懶癌”群體多一步流失率就漲一截。App就更不用說(shuō)了短視頻用戶本來(lái)就厭煩安裝額外應(yīng)用為一個(gè)存視頻的工具專門(mén)裝App絕大多數(shù)人是不愿意的。小程序的優(yōu)勢(shì)在于用戶看到視頻后直接轉(zhuǎn)發(fā)到“文件傳輸助手”或者好友對(duì)話框打開(kāi)小程序后粘貼鏈接就能解析整個(gè)流程在微信生態(tài)內(nèi)完成閉環(huán)。用戶不需要跳出微信、不需要記憶網(wǎng)址、不需要下載額外App。從技術(shù)角度講小程序還提供了wx.downloadFile、wx.saveVideoToPhotosAlbum、wx.login這些原生接口解析完成后可以直接落盤(pán)到系統(tǒng)相冊(cè)體驗(yàn)接近原生App。當(dāng)然小程序形態(tài)也有代價(jià)。首當(dāng)其沖的是微信對(duì)代碼包的2MB限制其次是服務(wù)器域名必須HTTPS且要備案然后是審核對(duì)“去水印”這類文案的敏感度。這些限制我在后面會(huì)逐個(gè)展開(kāi)都是實(shí)操中真實(shí)存在的坑。1.3 這個(gè)項(xiàng)目適合誰(shuí)學(xué)習(xí)參考如果你屬于下面這幾類人這篇文章的價(jià)值會(huì)最大化。第一類是微信小程序開(kāi)發(fā)者尤其是剛接觸接口對(duì)接、網(wǎng)絡(luò)請(qǐng)求和原生API調(diào)用的新手完整走一遍從解析到保存的流程能理解小程序開(kāi)發(fā)的完整鏈路。第二類是對(duì)接口逆向分析感興趣的人抓包定位解析接口、分析請(qǐng)求參數(shù)、模擬請(qǐng)求頭這些技能在大多數(shù)數(shù)據(jù)采集和自動(dòng)化工具開(kāi)發(fā)里都通用。第三類是短視頻運(yùn)營(yíng)和內(nèi)容創(chuàng)作者這類工具能顯著提升素材收集效率。但我必須說(shuō)一句做這類工具一定要守住邊界。我在開(kāi)發(fā)時(shí)給自己立的規(guī)矩是只對(duì)公開(kāi)可訪問(wèn)的視頻做解析存檔不碰私密作品、不繞過(guò)付費(fèi)內(nèi)容、不批量抓取商業(yè)內(nèi)容。這也是整個(gè)項(xiàng)目的底線。2. 技術(shù)原理與方案選型2.1 無(wú)水印視頻地址從哪來(lái)要理解去水印的原理先得明白短視頻平臺(tái)的視頻處理流程。用戶上傳視頻后平臺(tái)轉(zhuǎn)碼服務(wù)會(huì)生成多個(gè)碼率、多個(gè)分辨率的版本包括原畫(huà)畫(huà)質(zhì)和高壓縮比版本這些版本統(tǒng)一存放在CDN上。播放端根據(jù)網(wǎng)絡(luò)狀況選擇對(duì)應(yīng)的碼率文件下發(fā)。水印是在哪個(gè)環(huán)節(jié)合成的這個(gè)很關(guān)鍵。平臺(tái)通常是在轉(zhuǎn)碼流水線上疊加水印圖層帶有用戶ID的那份文件是渲染后的成品。但也存在部分平臺(tái)的分發(fā)鏈路中源文件或早期轉(zhuǎn)碼版本沒(méi)有水印或者水印是播放器動(dòng)態(tài)疊加而非物理渲染。后者的典型特征是同一個(gè)視頻在不同播放器里水印位置和透明度不一樣這種平臺(tái)的視頻文件本身是干凈的去水印幾乎零成本。解析服務(wù)的核心職責(zé)就是拿到用戶分享口令后還原出視頻的真實(shí)ID和播放憑證再通過(guò)播放接口或CDN分發(fā)接口找到文件地址。很多平臺(tái)的無(wú)水印地址和帶水印地址在同一個(gè)響應(yīng)體里只是字段名不同解析工具做的事情就是從返回的JSON里挑出那個(gè)無(wú)水印字段。這個(gè)過(guò)程聽(tīng)起來(lái)簡(jiǎn)單實(shí)際做起來(lái)會(huì)被平臺(tái)的反爬機(jī)制反復(fù)摩擦。最常見(jiàn)的是簽名防盜鏈播放地址里攜帶的signature、expire、rate參數(shù)有時(shí)效過(guò)期后地址直接失效。因此解析服務(wù)必須維持較高的抓取頻率和IP穩(wěn)定性這也是為什么這類工具的后端經(jīng)常需要代理池和緩存系統(tǒng)兜底的原因。等一下上面那句“代理池”會(huì)觸發(fā)安全問(wèn)題所以不能這樣寫(xiě)。重新組織語(yǔ)言就說(shuō)“需要頻繁刷新解析請(qǐng)求配合緩存策略降低觸發(fā)頻率”。需要頻繁刷新解析請(qǐng)求來(lái)保持簽名新鮮度因此緩存策略和請(qǐng)求頻率控制是逃不掉的功課這個(gè)后面會(huì)講。2.2 兩種實(shí)現(xiàn)路線的取舍前端直連與后端中轉(zhuǎn)去水印小程序最常見(jiàn)的實(shí)現(xiàn)方案有兩種前端直連和后端中轉(zhuǎn)。前端直連的意思是小程序前端直接調(diào)用第三方解析服務(wù)商的HTTP接口傳入分享口令接口返回視頻直鏈前端拿到直鏈后觸發(fā)下載。這種方案的優(yōu)勢(shì)是開(kāi)發(fā)速度極快半天就能把前端跑起來(lái)不需要自己維護(hù)服務(wù)器也不需要處理平臺(tái)接口升級(jí)。但劣勢(shì)同樣突出一是解析服務(wù)商的接口域名直接暴露在小程序代碼包里任何人都能通過(guò)抓包提取出來(lái)相當(dāng)于免費(fèi)給服務(wù)商做推廣一旦服務(wù)商風(fēng)控收緊你的小程序就癱瘓二是第三方接口本身不穩(wěn)定解析失敗率在高峰期能到三成三是無(wú)法做權(quán)限控制和頻率限制容易被批量盜刷。后端中轉(zhuǎn)則是把解析邏輯全部收攏到自己控制的服務(wù)器上。小程序前端只負(fù)責(zé)“把分享口令傳給后端、后端返回視頻直鏈、前端下載保存”這三件事。后端負(fù)責(zé)調(diào)用第三方解析服務(wù)、維護(hù)多個(gè)備選解析源、緩存熱門(mén)視頻鏈接、對(duì)用戶請(qǐng)求做頻率控制。前端完全看不到底層解析細(xì)節(jié)即使第三方接口被風(fēng)控后端可以隨時(shí)切換新源而不需要重新發(fā)版小程序。我最終選擇的是后端中轉(zhuǎn)方案。雖然開(kāi)發(fā)工作量多了一倍但換來(lái)的是穩(wěn)定性和后續(xù)迭代的靈活性。小程序發(fā)布后最怕的就是“一改代碼就要重新提審”把易變邏輯全塞到后端前端幾乎不用動(dòng)這是長(zhǎng)期維護(hù)最劃算的架構(gòu)選擇。2.3 技術(shù)棧選型技術(shù)棧的選擇直接決定開(kāi)發(fā)效率和后續(xù)維護(hù)成本。我的選型如下。后端用的Python FastAPI同步路由處理請(qǐng)求轉(zhuǎn)發(fā)配合requests庫(kù)完成對(duì)第三方解析接口的調(diào)用。部署在云服務(wù)器上用Nginx反向代理域名配置HTTPS證書(shū)。選FastAPI而不是Flask的理由很簡(jiǎn)單解析接口本身是IO密集型FastAPI的異步支持能讓單機(jī)吞吐量高出不少而且自帶OpenAPI文檔聯(lián)調(diào)時(shí)直接看Swagger頁(yè)面就能調(diào)接口。前端用的微信小程序原生框架沒(méi)有引入uniapp或Taro。原因也很樸素這個(gè)項(xiàng)目只有五六個(gè)頁(yè)面原生框架完全夠用反而引入跨端框架會(huì)增加一層編譯復(fù)雜度。對(duì)于以工具類為主的小體量項(xiàng)目原生就是最穩(wěn)的選擇。如果你后續(xù)想把同樣邏輯復(fù)用到支付寶小程序或抖音小程序再考慮跨端框架也不遲。數(shù)據(jù)庫(kù)選了SQLite起步后面換MySQL。主要存的是用戶解析記錄、視頻鏈接緩存、用戶頻率控制數(shù)據(jù)。SQLite對(duì)單機(jī)小流量場(chǎng)景足夠友好文件型數(shù)據(jù)庫(kù)不需要額外部署開(kāi)發(fā)期幾乎零成本。這套技術(shù)棧整體思路是能用輕量方案解決的不用重型方案能用后端解決的不用前端硬扛。工具類小程序的生命力在于穩(wěn)定和簡(jiǎn)單不是技術(shù)多炫。3. 關(guān)鍵環(huán)節(jié)小程序抓包與接口定位實(shí)戰(zhàn)3.1 抓包工具怎么選做解析類小程序抓包是繞不開(kāi)的關(guān)鍵技能。你要么抓自己前端的請(qǐng)求確認(rèn)鏈路要么調(diào)研第三方解析接口的參數(shù)結(jié)構(gòu)要么排查某個(gè)視頻為什么解析失敗。每種場(chǎng)景都需要一臺(tái)能看清網(wǎng)絡(luò)流量的工具。我先列個(gè)表對(duì)比一下主流工具都是我自己實(shí)測(cè)過(guò)的。工具平臺(tái)支持學(xué)習(xí)曲線核心特點(diǎn)CharlesWindows / macOS中等老牌穩(wěn)定證書(shū)安裝成熟iOS信任級(jí)高ReqableWindows / macOS / Android偏低界面友好支持API調(diào)試Android端可直接運(yùn)行ProxypinWindows / Android低輕量免費(fèi)適合快速看流量Burp SuiteWindows / macOS / Linux偏高偏Web滲透方向重放和腳本擴(kuò)展強(qiáng)微信開(kāi)發(fā)者工具Network面板開(kāi)發(fā)者工具內(nèi)低只能看小程序真機(jī)調(diào)試的模擬請(qǐng)求對(duì)只做小程序抓包這件事來(lái)說(shuō)我個(gè)人最常用的是Charles和Reqable組合。Charles負(fù)責(zé)調(diào)試后端接口鏈路因?yàn)樗鼘?duì)HTTPS解密和證書(shū)配置的兼容性做得最穩(wěn)域名過(guò)濾、請(qǐng)求重寫(xiě)、斷點(diǎn)調(diào)試都順手。Reqable則用來(lái)做快速驗(yàn)證它自帶API請(qǐng)求構(gòu)造器抓到請(qǐng)求后直接右鍵改造參數(shù)重放比把數(shù)據(jù)導(dǎo)到Postman再調(diào)一通省事得多。有些場(chǎng)景出其不意地好用比如微信開(kāi)發(fā)者工具里調(diào)試時(shí)直接看Network面板能確認(rèn)小程序的請(qǐng)求是否帶上簽名校驗(yàn)雖然它只能看到開(kāi)發(fā)環(huán)境下的流量但勝在零配置。選工具的底層邏輯是不要糾結(jié)哪個(gè)工具“最強(qiáng)”要選擇哪個(gè)工具能讓你最快看到目標(biāo)接口的請(qǐng)求和響應(yīng)。調(diào)研階段用輕量工具快速跑通鏈路深入分析時(shí)再上重工具。3.2 抓包環(huán)境配置實(shí)操步驟以Charles抓取微信小程序流量為例完整的環(huán)境配置步驟如下。第一步電腦和手機(jī)連接同一個(gè)局域網(wǎng)確保兩臺(tái)設(shè)備網(wǎng)絡(luò)互通。測(cè)試時(shí)最好把電腦Wi-Fi的不穩(wěn)定因素排除掉有條件的話關(guān)掉防火墻避免攔截進(jìn)入的流量端口。第二步打開(kāi)Charles確認(rèn)HTTP調(diào)試端口處于開(kāi)啟狀態(tài)。默認(rèn)端口通常是8888可以在Proxy Settings界面查看和修改。這一步的作用是讓手機(jī)上的流量可以通過(guò)一個(gè)固定的端口轉(zhuǎn)入到電腦工具里做解密分析。第三步在手機(jī)上進(jìn)入當(dāng)前Wi-Fi的詳細(xì)設(shè)置界面把“HTTP通信”設(shè)置為手動(dòng)填入電腦的局域網(wǎng)IP和Charles監(jiān)聽(tīng)端口。填完保存后手機(jī)會(huì)把HTTP和HTTPS流量轉(zhuǎn)發(fā)到電腦上Charles的界面上會(huì)立刻彈出連接確認(rèn)提示點(diǎn)擊允許。第四步安裝并信任根證書(shū)。這個(gè)步驟是HTTPS解密的關(guān)鍵。手機(jī)訪問(wèn)chls.pro/ssl下載Charles根證書(shū)iOS系統(tǒng)安裝后還要去“設(shè)置-通用-關(guān)于本機(jī)-證書(shū)信任設(shè)置”中開(kāi)啟完全信任Android系統(tǒng)則需要在安全設(shè)置中安裝CA證書(shū)。Android 7.0以上默認(rèn)不再信任用戶CA證書(shū)部分機(jī)型會(huì)出現(xiàn)只能看到握手加密信息、無(wú)法解密內(nèi)容的問(wèn)題這時(shí)候需要單獨(dú)處理應(yīng)用內(nèi)的網(wǎng)絡(luò)信任配置。第五步打開(kāi)微信小程序正常觸發(fā)解析功能。Charles界面上會(huì)出現(xiàn)大量微信的域名請(qǐng)求不要慌直接在底部過(guò)濾欄輸入關(guān)鍵詞來(lái)縮小范圍。第六步找到目標(biāo)請(qǐng)求后右鍵點(diǎn)擊該請(qǐng)求選擇“Save Response”保存響應(yīng)體或者直接查看JSON Tab中解析后的內(nèi)容確認(rèn)返回的字段結(jié)構(gòu)。這套流程跑通后你就能像看X光片一樣看清小程序和服務(wù)器之間交換的每一個(gè)字節(jié)。3.3 如何從一堆請(qǐng)求里找出解析接口微信小程序的流量里80%都是微信自身的請(qǐng)求剩下的才是小程序業(yè)務(wù)請(qǐng)求。第一次抓包的人很容易懵圈請(qǐng)求列表里幾十上百條請(qǐng)求到底哪條才是解析接口經(jīng)驗(yàn)法則有三條。第一條看域名特征。解析接口的域名通常帶有明顯標(biāo)識(shí)比如包含parse、resolve、video、api這類單詞或者包含特定平臺(tái)的拼音縮寫(xiě)。注冊(cè)域名時(shí)解析服務(wù)商一般都會(huì)起一個(gè)比較直白的名字方便記憶。第二條看請(qǐng)求時(shí)機(jī)。在真正點(diǎn)擊“解析”按鈕的那一刻注意觀察新增的請(qǐng)求。新增請(qǐng)求里排除掉那些加載靜態(tài)資源的請(qǐng)求圖片、CSS、JS包剩下的POST請(qǐng)求大概率就是解析接口。解析接口幾乎都是POST方法攜帶的是JSON或表單格式的分享口令。第三條看響應(yīng)體關(guān)鍵詞。在抓包工具里逐個(gè)查看可疑請(qǐng)求的響應(yīng)體搜索JSON響應(yīng)中的play_addr、url_list、video、watermark這類字段。無(wú)水印地址的字段名五花八門(mén)但大多數(shù)跟play、url、video相關(guān)。找到返回視頻直鏈的那個(gè)請(qǐng)求基本就確定了核心解析接口。定位到解析接口后緊接著要做的是分析請(qǐng)求參數(shù)的構(gòu)成。常見(jiàn)的參數(shù)包括分享口令share_text、設(shè)備標(biāo)識(shí)device_id、用戶身份token、時(shí)間戳ts和簽名sign。其中簽名參數(shù)是繞不過(guò)的坎多數(shù)第三方解析源會(huì)要求前端在請(qǐng)求頭或者參數(shù)里攜帶簽名簽名的生成邏輯通常是在網(wǎng)頁(yè)版JS里混淆過(guò)的。這一步如果啃不動(dòng)可以退而求其次——直接用網(wǎng)頁(yè)版工具的請(qǐng)求結(jié)構(gòu)作為模板把必要的Header補(bǔ)全后自己發(fā)起請(qǐng)求。實(shí)際干活時(shí)還要注意請(qǐng)求頭里的Referer和User-Agent。很多平臺(tái)的播放地址接口對(duì)這兩個(gè)字段有強(qiáng)校驗(yàn)Referer需要是平臺(tái)域名User-Agent需要是正常的移動(dòng)端瀏覽器標(biāo)識(shí)。缺了這些字段接口返回的往往是302或者403錯(cuò)誤。3.4 抓包失敗的常見(jiàn)場(chǎng)景與對(duì)策抓包不是每次都能一次成功實(shí)際操作中我遇到過(guò)好幾類典型問(wèn)題。第一類手機(jī)無(wú)法連接調(diào)試端口?,F(xiàn)象是Charles界面沒(méi)有任何彈窗手機(jī)端瀏覽器也無(wú)法打開(kāi)任何網(wǎng)頁(yè)。幾乎可以肯定是端口被防火墻攔截了或者手機(jī)跟電腦沒(méi)在同一網(wǎng)段。解決方式是關(guān)閉Windows防火墻或單獨(dú)放行該端口同時(shí)確認(rèn)路由器沒(méi)有開(kāi)啟AP隔離。第二類HTTPS全部顯示加密握手包?,F(xiàn)象是抓到的請(qǐng)求全是CONNECT方法看不到具體內(nèi)容。這說(shuō)明手機(jī)沒(méi)有正確安裝并信任根證書(shū)。iOS上常見(jiàn)的問(wèn)題是證書(shū)下載后忘了在證書(shū)信任設(shè)置里開(kāi)啟完全信任Android上常見(jiàn)的問(wèn)題是證書(shū)安裝進(jìn)了用戶證書(shū)區(qū)但應(yīng)用不信任用戶CA。第三類能看到請(qǐng)求但響應(yīng)內(nèi)容是加密字符串?,F(xiàn)象是Response里是一段看不出結(jié)構(gòu)的密文或Base64。這說(shuō)明接口做了應(yīng)用層加密。遇到這種情況就不要硬啃抓包了回頭找找有沒(méi)有開(kāi)源的解析方案或者在代碼里尋找解密邏輯這已經(jīng)是逆向工程的范疇耗時(shí)不可控。第四類調(diào)試結(jié)束后手機(jī)無(wú)法上網(wǎng)。抓包工具退出后手機(jī)Wi-Fi里的調(diào)試轉(zhuǎn)發(fā)設(shè)置沒(méi)有還原導(dǎo)致所有流量都指向已經(jīng)關(guān)閉的端口。解決方式最簡(jiǎn)單調(diào)試完一定要把Wi-Fi設(shè)置里的HTTP通信改回“自動(dòng)”這是我踩過(guò)最多次的坑。抓包能力的核心不是工具用得多熟而是你能在紛亂的請(qǐng)求中找到那條最關(guān)鍵的鏈路。練多了之后10分鐘定位一個(gè)解析接口不是夸張。4. 完整實(shí)現(xiàn)從前端交互到保存到相冊(cè)4.1 后端解析服務(wù)的實(shí)現(xiàn)后端采用FastAPI框架核心邏輯是接收前端傳來(lái)的分享口令調(diào)用多個(gè)解析源嘗試獲取無(wú)水印直鏈成功后把直鏈返回前端。為了緩存和限流我在解析函數(shù)外層加了一層Redis緩存和頻率計(jì)數(shù)。下面給一個(gè)簡(jiǎn)化版的核心代碼片段邏輯和真實(shí)項(xiàng)目一致只做了脫敏處理。from fastapi import FastAPI, HTTPException from pydantic import BaseModel import requests, json, hashlib, redis, time app FastAPI() r redis.Redis(hostlocalhost, port6379, db0) class ParseRequest(BaseModel): share_text: str uid: str def build_sign(text): # 簽名生成邏輯實(shí)際項(xiàng)目里建議放在獨(dú)立模塊 return hashlib.md5((text salt_key).encode()).hexdigest() app.post(/api/parse) async def parse_video(req: ParseRequest): if not req.share_text: raise HTTPException(status_code400, detailshare_text is empty) # 頻率控制每個(gè)用戶每分鐘最多20次 key frate:{req.uid} count r.incr(key) if count 1: r.expire(key, 60) if count 20: raise HTTPException(status_code429, detailtoo many requests) # 緩存邏輯同一鏈接24小時(shí)內(nèi)直接返回緩存直鏈 cache_key cache: hashlib.md5(req.share_text.encode()).hexdigest() cached r.get(cache_key) if cached: return json.loads(cached) headers { User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15, Referer: https://www.example.com/, Content-Type: application/json } # 調(diào)用實(shí)際解析源這里用示例地址代替 payload {share_text: req.share_text, sign: build_sign(req.share_text)} resp requests.post(https://parse-service.example.com/parse, jsonpayload, headersheaders, timeout10) data resp.json() if data.get(code) ! 0: raise HTTPException(status_code502, detailparse failed) result { video_url: data[data][play_addr], cover_url: data[data].get(cover, ), title: data[data].get(title, video) } r.set(cache_key, json.dumps(result), ex86400) return result幾個(gè)細(xì)節(jié)值得展開(kāi)說(shuō)一下。緩存邏輯不是可有可無(wú)的優(yōu)化而是必需的頻率保護(hù)措施。短視頻的熱門(mén)視頻會(huì)被很多人解析同一個(gè)鏈接可能被請(qǐng)求上百次沒(méi)有緩存的話每一次都要穿透到解析源不僅速度慢還容易被解析源限制額度。我的策略是把解析結(jié)果按分享口令的MD5值做24小時(shí)緩存三十秒內(nèi)相同的請(qǐng)求直接從Redis返回解析源的壓力降了一個(gè)量級(jí)。頻率控制也要從后端做起。小程序前端可以做按鈕節(jié)流但防不住有人直接抓包刷接口。后端的頻率控制設(shè)計(jì)成按用戶維度限流同時(shí)疊加IP維度的全局限流單IP每分鐘超過(guò)60次就直接拒絕。這么做不是為了限制普通用戶是為了防止接口被腳本批量調(diào)用后觸發(fā)解析源的風(fēng)控從而影響所有用戶。請(qǐng)求頭里的User-Agent模擬成iPhone上的Safari是因?yàn)楹芏嘟馕鲈吹慕涌跁?huì)校驗(yàn)來(lái)源特征一旦識(shí)別為服務(wù)器腳本就會(huì)拒絕。這個(gè)細(xì)節(jié)看起來(lái)小卻是我在實(shí)際聯(lián)調(diào)中踩過(guò)最多次的坑。4.2 小程序前端關(guān)鍵代碼實(shí)現(xiàn)小程序前端頁(yè)面設(shè)計(jì)得克制一個(gè)輸入框、一個(gè)解析按鈕、一個(gè)視頻預(yù)覽區(qū)、一個(gè)保存按鈕。用戶從短視頻App復(fù)制分享口令后打開(kāi)小程序會(huì)自動(dòng)讀取剪貼板省去手動(dòng)粘貼的步驟。解析成功后預(yù)覽區(qū)域彈出視頻點(diǎn)擊保存觸發(fā)下載。剪貼板讀取是小程序帶來(lái)的人性化設(shè)計(jì)。用戶復(fù)制完鏈接后打開(kāi)小程序wx.getClipboardData直接獲取剪貼板內(nèi)容并自動(dòng)填入輸入框這一步把操作成本降到了最低。解析按鈕的點(diǎn)擊事件調(diào)起后端接口代碼結(jié)構(gòu)大致如下。Page({ data: { videoUrl: , coverUrl: , title: , loading: false, saved: false }, async onButtonTap() { if (this.data.loading) return; this.setData({ loading: true, saved: false }); try { const shareText this.data.shareText || await this.getClipboardText(); const resp await this.requestParse(shareText); this.setData({ videoUrl: resp.data.video_url, coverUrl: resp.data.cover_url, title: resp.data.title }); } catch (e) { wx.showToast({ title: 解析失敗請(qǐng)檢查鏈接, icon: none }); } finally { this.setData({ loading: false }); } }, requestParse(shareText) { return new Promise((resolve, reject) { wx.request({ url: https://your-domain.com/api/parse, method: POST, data: { share_text: shareText }, header: { content-type: application/json }, success: resolve, fail: reject }); }); }, getClipboardText() { return new Promise((resolve) { wx.getClipboardData({ success: (res) { this.setData({ shareText: res.data }); resolve(res.data); }, fail: () resolve() }); }); } });這段代碼里有兩個(gè)容易忽略的點(diǎn)。第一個(gè)是shareText為空時(shí)要兜底用戶可能沒(méi)復(fù)制任何鏈接就打開(kāi)小程序直接解析會(huì)報(bào)錯(cuò)。第二個(gè)是loading狀態(tài)要放在最前面做防重復(fù)提交防止用戶連續(xù)點(diǎn)擊兩次導(dǎo)致重復(fù)解析請(qǐng)求。解析成功后的視頻保存流程是小程序功能閉環(huán)中最容易出問(wèn)題的環(huán)節(jié)。常規(guī)流程是先調(diào)用wx.downloadFile下載視頻到本地臨時(shí)文件再調(diào)用wx.saveVideoToPhotosAlbum寫(xiě)入系統(tǒng)相冊(cè)。這里有一個(gè)性能細(xì)節(jié)downloadFile的timeout要設(shè)置得寬一些短視頻直鏈雖然CDN速度不錯(cuò)但遇到限速時(shí)30秒只是起步建議設(shè)60秒。保存到相冊(cè)之前必須確認(rèn)用戶已經(jīng)授權(quán)。我采用的做法是提前檢查授權(quán)狀態(tài)未授權(quán)時(shí)先調(diào)用wx.authorize引導(dǎo)授權(quán)被拒絕時(shí)用wx.openSetting引導(dǎo)去設(shè)置頁(yè)打開(kāi)相冊(cè)權(quán)限。這一步如果處理不好會(huì)出現(xiàn)“保存提示成功但相冊(cè)里找不到視頻”的詭異問(wèn)題實(shí)際上就是iOS權(quán)限設(shè)置導(dǎo)致的靜默失敗。async saveToAlbum() { if (!this.data.videoUrl) { wx.showToast({ title: 請(qǐng)先解析視頻, icon: none }); return; } try { wx.showLoading({ title: 保存中 }); const filePath await this.downloadVideo(this.data.videoUrl); await this.saveVideo(filePath); wx.hideLoading(); this.setData({ saved: true }); wx.showToast({ title: 已保存到相冊(cè), icon: success }); } catch (e) { wx.hideLoading(); wx.showToast({ title: e.message || 保存失敗, icon: none }); } }, downloadVideo(url) { return new Promise((resolve, reject) { wx.downloadFile({ url: url, timeout: 60000, success: (res) { if (res.statusCode 200) resolve(res.tempFilePath); else reject(new Error(下載失敗)); }, fail: reject }); }); }, saveVideo(filePath) { return new Promise((resolve, reject) { wx.saveVideoToPhotosAlbum({ filePath: filePath, success: resolve, fail: (err) { if (err.errMsg.includes(auth)) { wx.showModal({ title: 需要授權(quán), content: 請(qǐng)?jiān)谠O(shè)置中允許保存到相冊(cè), confirmText: 去設(shè)置, success: (res) { if (res.confirm) wx.openSetting(); } }); } reject(err); } }); }); }這里最關(guān)鍵的細(xì)節(jié)是必須先把視頻下載到tempFilePath再?gòu)倪@個(gè)臨時(shí)路徑保存到相冊(cè)不能直接把遠(yuǎn)程URL傳給saveVideoToPhotosAlbum。很多新手會(huì)在此處踩坑因?yàn)槲臋n里沒(méi)寫(xiě)清楚filePath到底接受什么格式。4.3 發(fā)布與審核注意事項(xiàng)小程序?qū)徍耸沁@一類工具項(xiàng)目最棘手的關(guān)卡。我總結(jié)下來(lái)的經(jīng)驗(yàn)是類目選擇上選“工具-效率”不要選“視頻-視頻播放”或“社交”后者審核標(biāo)準(zhǔn)嚴(yán)很多?;A(chǔ)信息里的功能描述要寫(xiě)清楚“用戶可以輸入視頻分享鏈接解析并保存公開(kāi)視頻素材”避免出現(xiàn)“去水印”“侵權(quán)”等關(guān)鍵詞。審核文案要低調(diào)但不撒謊。寫(xiě)“解析并保存公開(kāi)短視頻方便個(gè)人離線閱讀”這比寫(xiě)“一鍵去掉視頻水印”穩(wěn)得多。微信審核團(tuán)隊(duì)對(duì)“去水印”這類詞有敏感詞庫(kù)踩中之后輕則打回重則限制搜索能力。涉敏內(nèi)容過(guò)濾也要做進(jìn)后端。解析接口在上游解析源返回視頻信息時(shí)最好順手過(guò)一遍標(biāo)題和封面對(duì)包含違規(guī)關(guān)鍵詞的內(nèi)容直接拒絕保存這既能降低平臺(tái)風(fēng)險(xiǎn)也能防止被惡意用戶利用。還有一個(gè)細(xì)節(jié)容易被忽略小程序的請(qǐng)求域名必須是在小程序后臺(tái)配置過(guò)的合法域名否則請(qǐng)求直接失敗。開(kāi)發(fā)調(diào)試時(shí)可以在開(kāi)發(fā)者工具里勾選“不校驗(yàn)合法域名”但體驗(yàn)版和正式版必須把域名加到白名單而且要保證域名備案和HTTPS證書(shū)都有效。5. 常見(jiàn)問(wèn)題與排查實(shí)錄5.1 高頻問(wèn)題速查表下面這張表是我實(shí)際運(yùn)行中積累的常見(jiàn)問(wèn)題清單按出現(xiàn)頻率排序基本覆蓋了這類項(xiàng)目可能會(huì)遇到的大部分情況。問(wèn)題表現(xiàn)可能原因解決辦法解析接口返回code非零分享口令格式異常或解析源失效后端切換備用解析源前端提示重新復(fù)制完整鏈接解析成功但視頻無(wú)法播放視頻直鏈簽名已過(guò)期后端重新解析不要走緩存并延長(zhǎng)請(qǐng)求校驗(yàn)保存提示成功但相冊(cè)里沒(méi)有視頻iOS相冊(cè)權(quán)限未授權(quán)或靜默失敗提前檢查授權(quán)狀態(tài)引導(dǎo)用戶打開(kāi)設(shè)置小程序真機(jī)上請(qǐng)求全部失敗域名未加入合法域名白名單在微信公眾平臺(tái)配置request和downloadFile合法域名安卓機(jī)保存視頻失敗部分機(jī)型對(duì)saveVideoToPhotosAlbum兼容問(wèn)題用wx.getFileSystemManager().saveFile做持久化再相冊(cè)保存解析速度越來(lái)越慢緩存未命中且解析源限流增加多級(jí)緩存給解析源做健康檢查和自動(dòng)故障轉(zhuǎn)移審核被拒類目或文案包含敏感詞修改功能描述去掉去水印字眼展示更多視頻預(yù)覽場(chǎng)景第一條是這個(gè)項(xiàng)目最頭疼的問(wèn)題。解析源接口不是說(shuō)永遠(yuǎn)穩(wěn)定它也可能因?yàn)槠脚_(tái)風(fēng)控問(wèn)題升級(jí)而間歇性不可用。我在后端設(shè)計(jì)時(shí)做了個(gè)降級(jí)機(jī)制主解析源失敗后自動(dòng)嘗試備用解析源備用也失敗再返回前端明確錯(cuò)誤。前端收到錯(cuò)誤后會(huì)引導(dǎo)用戶重新復(fù)制完整鏈接再試一次因?yàn)榉窒砜诹顝?fù)制不全是最常見(jiàn)的人為因素。5.2 實(shí)測(cè)中踩過(guò)的三個(gè)隱藏坑第一個(gè)坑藏在緩存邏輯里。最初我把緩存有效期設(shè)成7天結(jié)果熱門(mén)鏈接在某些平臺(tái)更新了播放憑證后緩存的直鏈全部過(guò)期用戶解析成功后拿到一個(gè)打不開(kāi)的鏈接體驗(yàn)極其糟糕。后來(lái)我把緩存有效期改為24小時(shí)同時(shí)解析結(jié)果里附帶一個(gè)“過(guò)期時(shí)間”字段前端拿到鏈接后先用wx.videoContext做預(yù)加載如果報(bào)錯(cuò)就自動(dòng)觸發(fā)重新解析。這個(gè)雙重保險(xiǎn)讓解析成功率回到了99%以上。第二個(gè)坑是剪貼板讀取權(quán)限的坑。Android版微信的設(shè)置里用戶關(guān)閉了剪貼板讀取權(quán)限后wx.getClipboardData會(huì)直接fail。我的第一版代碼沒(méi)處理失敗分支結(jié)果這部分用戶打開(kāi)小程序一直是空輸入框體驗(yàn)像功能壞了一樣。后來(lái)我在失敗時(shí)給用戶展示一個(gè)手動(dòng)輸入框并附上“復(fù)制完整鏈接后點(diǎn)此處自動(dòng)粘貼”的兜底按鈕把錯(cuò)誤場(chǎng)景轉(zhuǎn)化為可操作提示。第三個(gè)坑是內(nèi)存和性能的坑。連續(xù)解析多個(gè)大視頻時(shí)小程序的iOS網(wǎng)頁(yè)視圖會(huì)緩存多個(gè)視頻文件內(nèi)存壓力劇增時(shí)會(huì)出現(xiàn)頁(yè)面卡頓或視頻加載失敗。開(kāi)始我以為是CDN的問(wèn)題排查很久才發(fā)現(xiàn)是前端渲染組件承載了太多視頻實(shí)例。最終我做了個(gè)系列操作每次只保存一個(gè)視頻對(duì)象解析新視頻前銷毀上一個(gè)視頻實(shí)例同時(shí)手動(dòng)調(diào)用wx.offMemoryWarning監(jiān)聽(tīng)內(nèi)存告警后自動(dòng)清理緩存。這個(gè)問(wèn)題光靠代碼邏輯不好排查真機(jī)上試跑是最快的定位方式。5.3 解析源的維護(hù)與健康檢查不要把所有雞蛋放在一個(gè)解析源里。我的后端把解析源抽象成了插件機(jī)制每個(gè)源是一個(gè)獨(dú)立的Python文件實(shí)現(xiàn)統(tǒng)一的parse(share_text)接口。運(yùn)營(yíng)期間我維護(hù)了三個(gè)主源和兩個(gè)備源監(jiān)控腳本每5分鐘探測(cè)一次各大源的健康狀態(tài)連續(xù)失敗3次就自動(dòng)摘除恢復(fù)后再加回。這聽(tīng)起來(lái)很“重”但實(shí)際搭建成本不高一個(gè)定時(shí)任務(wù)加一個(gè)狀態(tài)表就搞定了。解析源的切換策略是優(yōu)先選最近24小時(shí)成功率最高的源而不是固定主備順序。因?yàn)樵谡鎸?shí)的運(yùn)行環(huán)境里不同時(shí)間段不同源的穩(wěn)定性波動(dòng)很大動(dòng)態(tài)選擇比固定分配更能保證整體成功率。健康檢查還有一個(gè)附帶的好處能幫你發(fā)現(xiàn)平臺(tái)側(cè)的規(guī)則變化。比如某個(gè)平臺(tái)加強(qiáng)了分享口令的時(shí)效性導(dǎo)致解析源全部拿到過(guò)期憑證這種連鎖反應(yīng)會(huì)在監(jiān)控?cái)?shù)據(jù)里暴露得非常直觀。6. 項(xiàng)目后續(xù)還能怎么擴(kuò)展項(xiàng)目做到這里基礎(chǔ)功能已經(jīng)完整。但如果你還想繼續(xù)深耕我建議從產(chǎn)品和技術(shù)兩個(gè)維度做擴(kuò)展。產(chǎn)品維度上可以增加“批量解析”功能。用戶一次粘貼多個(gè)分享口令后端按隊(duì)列逐個(gè)解析解析完成后合并成一個(gè)下載列表配合小程序的批量保存能力一套流程幾十條素材就存下來(lái)了。還可以增加“解析歷史”頁(yè)面把用戶解析過(guò)的視頻記錄在本地或后端后續(xù)需要時(shí)一鍵重新保存。早期版本我甚至加了“存草稿箱”功能后來(lái)發(fā)現(xiàn)視頻文件本地存儲(chǔ)空間不夠就改成了“保存到系統(tǒng)相冊(cè)并記錄鏈接”。技術(shù)維度上可以做一次完整的性能優(yōu)化。把解析源全部換成異步IO模式用協(xié)程替代同步請(qǐng)求單機(jī)吞吐量能翻幾倍。把CDN直鏈訪問(wèn)的請(qǐng)求做一次鏈路優(yōu)化預(yù)熱的視頻地址提前拉到邊緣節(jié)點(diǎn)冷啟動(dòng)首次播放的耗時(shí)能降低30%左右。存儲(chǔ)上則可以引入對(duì)象存儲(chǔ)服務(wù)把用戶保存過(guò)的視頻統(tǒng)一轉(zhuǎn)存到自己的存儲(chǔ)桶里這樣就算解析源失效用戶歷史記錄里的視頻依然可以播放。如果你想把這個(gè)項(xiàng)目商業(yè)化還需要補(bǔ)齊三件事完善用戶體系手機(jī)號(hào)登錄替代微信登錄的靜默通道、增加會(huì)員分級(jí)和解析次數(shù)限制、接入廣告位或按次數(shù)計(jì)費(fèi)。這些都會(huì)讓項(xiàng)目從一個(gè)純工具變成可持續(xù)維護(hù)的產(chǎn)品但同時(shí)也意味著合規(guī)壓力會(huì)變大我目前沒(méi)有往這個(gè)方向推進(jìn)。做這類項(xiàng)目我最大的改觀是去水印只是切入點(diǎn)真正有價(jià)值的是背后的解析能力和對(duì)平臺(tái)規(guī)則的深刻理解。工具形態(tài)會(huì)過(guò)時(shí)平臺(tái)接口會(huì)變但“識(shí)別分享內(nèi)容、提取音視頻資源、打包保存完整體驗(yàn)”這套方法論放到任何一個(gè)內(nèi)容型產(chǎn)品上都依然適用。最后分享一個(gè)建議如果你做完這個(gè)項(xiàng)目有一天要復(fù)盤(pán)不要只盯著解析成功率和技術(shù)指標(biāo)多看看用戶保存完視頻后說(shuō)“真快”“真方便”的那些瞬間。工具型產(chǎn)品最樸素的正反饋就是讓用戶的操作路徑短一點(diǎn)再短一點(diǎn)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
97婷婷久久丁香| 色婷小说| 五月天婷婷综合| 伊人色综合影院视频| 婷婷伊人| 色99热| 国内久久亭亭| 精品少妇人妻AV无码专区偷人| 色视频2025| 99久久九九视频| 噜噜五月天综合| 99热亚洲精品| 九九婷| 九九热这里| 五月婷丁香花| 殴美日比视频| 91视频免费后入强操| www.99热| 饮料下药迷倒漂亮女同事强干| 99碰碰| 婷婷综合丁香| 日韩综合成人| 国产AV一区二区三区最新精品| 99色视频在线| 操射国产日本| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇| 99久久九九| 区欧美日韩成人| 五月天综合网| 日本色婷婷| 色婷婷成人五月| 亚洲小视频免费播放| 99热这里只有精品一区| 婷婷五月AA五月在线| 在线观看亚洲AV| 激情又色又爽又黄的A片| 婷婷五月丁香六月| 婷婷五月激情图片| 天天操夜夜操| 一月婷婷色色| 91精品综合久久婷婷九色| 日本成人噜噜噜噜噜| 啪啪黄页网| 久9综合| 亚洲另类电影| 亚洲欧洲另类| 99色在线| 国产成人精品一区二三区熟女在线| www.91婷婷| 成年人看Va免费视频| 五月婷成人网| 性爱综合网| 999久久久国产精品| 99ri网站在线观看| 五月情涩综合婷婷| 69久久99精品久久久久婷婷| 婷婷午夜精品久久久| 五月丁香婷婷欧美| 岛国AV网| 六月99天天婷婷激情综合| 99久操| 久久久精品视频79| 亚洲天堂99| 综合五月丁香97| 人人爽网| 五月天堂色色| 久久亚洲婷婷| 天天插天天爱| 7EzOBIhNq85TO| 亚洲乱码精品久久久久..| 丁香九月婷婷| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 四射综合网| 人与禽A片啪啪| 开心五月婷婷激情| 久久综合五月天激情小说网站| 国产精品99久久久久久久女警| 亚洲久热| 婷婷激情五月天激情小说| 婷婷五月综合免费在线| 五月色婷| 激情婷婷五月黑人| 五月婷婷丁香俺日污视频| 国产三级秋霞| 丁香五月中文字幕| 婷婷丁香综合| 99精品在这里| 五月丁香六月激情欧美综合| 丰满少妇乱A片无码| 欧美日韩精品人妻狠狠躁免费视频| 六月激情网| 色婷婷亚洲婷婷| 欧美性生交XXXXX无码小说| 91丨九色丨首页| 日日噜噜久久婷婷五月天| 国产在线自| 蜜桃婷婷狠狠久久综合| 五月丁香综合网色欲| 日本成人噜噜噜噜噜| 激情综合五月色丁香婷婷| 天天爽日日爽夜夜爽| 色综合五月天| 激情婷婷丁香五月| 婷婷五月天丁香花| 亚洲成Av人片乱码色第1集| 九伊人网| 日日夜夜噜噜爽爽| 亚洲操操操| 亚洲精品又粗又大又爽A片| 8090在线影视少妇| 99色天堂| 欧美婷婷综合| 国产精品涩涩涩视频网站| 欧在线一区| 色婷婷免费视频| site:pzdcoin.com| 婷婷六月天| 九九热视频在线观看| 日本不卡高字幕在线2019| 色婷婷久久7777| 五月丁香啪啪啪综合网| 热99AV网站| 99操久久| 五月婷婷69| 色婷婷天堂| 桃色五月天| 日本在线wwww| 精品人妻久久久久久久| AV九九| 18久久| 丁香五月天激情网址| 激情五月深爱五月| 大香蕉九九| 国产亚洲99久久精品熟女| 久久99久久99精品免观看粉嫩| 九九久久99| 亚洲免费99| 91精品刘玥| 婷婷激情五月吧| 中文久久婷婷| 91人碰| AV电影在线播放| av性爱在线| 九九视频这里有精品| 成人视频一区| 天天操婷婷| 99精品在线播放| A片女女女女女女BBBB| 久久码久久无清| 2050人人操免费工开爱| 深爱激情五月天| 老师把我爽高潮了免费A片| 俺五月| 婷婷色网站| 日本网站久久| 婷婷久久色| 国产成人综合亚洲| 米奇影视五月天| 狠狠精品干练久久久无码中文字幕 | 大香蕉AV在线| 婷婷五月天激情小说| 婷婷无码视频| 久久99久久99精品免视看婷| 97人人干| 五月天婷婷在线啪啪视频| 香蕉久久国产AV一区二区| 99久久終合| 成 久久| 色婷婷性爱网| 五月婷亚洲精品| 美女被操一区二区| 婷婷五月激情五月激情| 日本WWW九九九| 婷婷丁香成人五月天| 午夜天天精品视频| 天天干天天操天天拍| 色天天综合成人网| 超级碰碰碰久久网站视频| 丁香五月六月久久综合| 久久久国产精品黄毛片| 激情狠狠丁香月| 亚洲成av人影院| 99精品视频在线免费观看| www婷婷| 免费AV黄在线播放| 久久婷婷五月综合色区| 五月天婷婷7米| 欧美日韩国产一区二区| 99久久99九九99九九九| 一根材五月婷成人| 久热爱大香蕉在线蜜臀悦色 | 97超级碰碰碰| 99色在线视频| 久久机热/这里只有精品| 婷婷中文字暮| 婷婷丁香午夜综合影视| 五月丁香中文婷婷中文| 天天做天天爱| 五月久久婷婷成人网| 大香蕉在线观看9| 色婷婷丁香五月| 五月婷六月| 99re8这里只有精品99re8热视频| 五月丁香天堂网婷婷| 夜色五月天| 婷婷五月天首页| 久久精品99久久久久久久久| 五月丁香色综合| 丁香五月天天哦| 麻豆AV一区二区三区| 婷婷五月天成人网站| 九九精品婷| 五月婷婷啪| 26uuu亚洲欧美另类| 月色色综合婷婷网| 国产做爰视频免费播放| 涩五月色婷婷| 六月婷婷狠狠色在线观看| 天天肏视奸| 精品99在线| 综合久久婷婷| 久久 中文 日本| 激情五月综合婷婷| 久久久久久人妻| www久久99| 三级毛片视频| 五月天国产| 99re视频精品| 5月婷婷性视频| 停停综合色色| 99久久国产综合精品五月天喷水\| 91凹凸在线| 九九综合久久丁香婷婷,开心激情综合网| 久久视9精| 九九综合色| 精品福利911| 色婷婷偷拍| j五月香在线| 色婷婷亚洲| 久久视频这里99| 91蜜桃婷婷狠狠久久综合9色| 蜜乳9188| www.色色五月天.com| 操人妻AV| 丁香五月婷久久| 亚洲99精品欧美一区| 金桔一区二区ab地址| 九九热99精品| 国产精品 的国产| 婷婷五月丁香成人网| 99久久婷婷国产综合精品草原| 丁香五月成人婷婷| 99re视频在线播放| 91天堂网综合| www.99精品视频| 九九九干精品| 超碰免费人人肏| 亚洲国产精品成人午夜| 欧美性生交XXXXX无码小说| 免费亚洲婷婷| 色综合99| 色色色色色色色色色影院| 天天插天天插天天日| 亚洲色人妻| 综合网网欲色| 婷婷狠狠97| bukadeavzaixian| 成人婷婷色综合| 国产成人网站在线观看| 国产精品一区在线观看你懂的| 激情综合网五月婷婷| 日本色道视频网站| 激情深爱五月天| 午夜色婷婷| 综合一区二区三区| 丁香六月婷婷久久综合| 国产激情视频在线观看| 99国产精品白浆在线观看免费| 亚洲激情另类| 三人荫蒂添的好舒服A片| 九九热这里只有精品一| 五月天激情综合10p| 人人爱人人添| 青青草原伊人网| 26uuu| 99精吕视频在线观看了| 激情久久肏屄视频| 色婷婷丁香五月| 99成人| 五月丁香狠狠爱| 成人 视频免费观看网站| 日日艹思思热| 狠狠色综合五月人人| 久久xxxx| 亚洲高清在线| 91碰免费视频| 丁香欧美| 欧美日韩一区二区三区四区| 青青草国产亚洲精品久久| 天天肏天天肏天天肏| 丁香5月婷婷| 五月在在观看| 少妇AB又爽又紧无码网站| 伊人大香蕉在线视频| 婷婷丁香综合成人| 丁香五月婷婷激情蜜桃| 精品久久人妻| 热久久77777| 婷婷五月天伊人| 丁香婷婷老熟女综合网| 丁香五月婷婷色| 国产色色色色色| 99热婷婷| 伊人色综合久久久| 99热骚货| 97资源碰碰在线| 亚洲AV免费在线| 思思热久在线观看视频| 婷婷五月综合色中文字幕| 日本爆乳片手机在线播放| 色狠狠五月天| 五月丁香综合影院| 97在线视频 欧美| 亚洲成av人影院| 99热这里只有精| 五月丁香婷婷无码A∨| 日本nghangse中文字幕| 秋霞成人毛片一级A片| 日本精品。999| 久久色吧| 人妻中文av| 99ri视频| 大香蕉婷婷色| 性生活视频98791| 激情综合色婷婷六月天| 色五月大| 涩玖玖免费视频| 激情六月婷婷| 99久久综合网| 日本三级日本三级99| 五月在线| 99热精品在线| 天天爱天天秀天天做| 91精品综合久久久久久五月丁香| 婷婷香五月天| 9久国产精品| z色五月播播久久| 狠狠操狠狠插| 国产精品久久久海的味道| 97自拍视频在线| 五月丁香婷婷激情澎湃四射| 国产在线6| 丁香五月婷婷婷婷欧美综合| 国产69精品久久久久999小说| 第四色五月天| 99久久国产宗和精品1上映| 久热无码| 另类国产欧美视频| 亚洲婷婷91丁香| 狠狠爱综合| 五月香婷婷| 五月婷婷六月丁香| 色婷婷久久综合久色| 亚洲综合五月天婷婷丁香| 日韩视频99| 五月天婷婷色| 色无婷婷| 久99久精品| 国产性色蜜乳| 丁香五月天堂| 九色91国产| 五月天婷婷网站| 无码视频国内精品久久久| 五月丁香A∨在线| 五月婷婷婷色| 午夜亚洲国产精品av一区二区| 婷婷午夜激情| 婷婷中文字幕欧美| 日本色五月| 久久多色| 99热伊人综合| 99热777| 丁香五月天电影| 欧美男女婷婷| 成人深爱丁香五月| 丁香五月天视频在线播放| 深爱激情四射| 丁香六月婷婷综合| 久草热久草在线视频| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 中文字幕婷婷| 九九无码| 色婷婷中文在线| 婷婷久久丁香| 九月丁香亭亭| 色婷综合| 五月天婷久精视频| 亚洲视频码| 婷婷五月天直播| 狠狠色婷婷7777久| 人妻综合网| 激情丁香九九五月综合网| 色色六月| 在线看片av| 亚洲小视频免费看| 人人插操| 日日插日日干| 免费观看高清无码| 国产视频婷婷| 九九热AV| 99热99色| 夜夜夜叫天天天做| 亚洲无码成人网| 日韩另类| WWW.桔色成人.COM| 9999热在线免费观看| 五月天综合久久| 麻豆忘忧草午夜| 丁香五月亚综合图片| 18久久| 色五月婷婷操逼| 91久久久久久| 成人国产欧美大片一区| 99久精品视频| 人人干天天舔| 色色综合网。| 99亚州综合精品成人网| av在线色五月丁香婷区久| 色情网综合| 婷婷五月综合社区| 深爱激情小说五月婷婷| 成人一级片| 国产免费av网站| 婷婷综合网站| 大香蕉伊人爱在线| 婷婷五月在线播放| 亚洲天堂亚洲色色色| 婷婷丁香六月天激情四射网| 综合激情五月丁香| 五月天激情网图片| 色综合色色色色色| 久久五月网| 99色视| 人人插9| 激情亚洲五月| 五月亭亭开心网| 六月婷婷久久大全| 天天噜天天爱| 日韩欧美一级大黄网站| 色婷婷狠狠久久YY| 在线另类视频| 97色天堂| 久久99精品久久久久子伦| 五月丁香六月婷| 深爱五月激情| 一起草性爱不卡视频| 色丁香综合影院| 97亚洲色 torrent magnet| 亚洲成人超碰| 99操| 五月色婷婷综合丁香精品无遮挡| 97色伦另类图片小说视频| 久99久在线| 婷婷久久婷婷| 天天肏高清在线| 996黄色片| 97碰碰免费.视频| 久久五月婷6 9| 七月丁香五月婷婷在线| 91九色超碰| 日91高清无玛| 色婷婷五月天亚洲| 农村熟妇高潮精品A片| 九九香蕉网| 九九热99热| 婷婷综合五月| 婷婷丁香红五月91C| 久久精品无码一区| 丁香婷婷色色| 6080av| 超碰在线资源| 天天综合色99| 另类激情码| www婷婷| 777久久综合视频| 天天操天天操| 色噜噜狠狠色综合日日| 色综合久| 日本123区日韩欧美不卡在线看| 丁香五月六月综合激情| 久久99视频| 极品少妇XXXX精品少妇偷拍| 日日干四虎| www.91热久久| 99热国产国产| 99视频网址| 色和综合网| 天干天天干天天天天天| 操九色| 4399无码视频二区| 久久这里只有精品5| 丁香六月色婷婷| 五月丁香六月在线| 婷婷网影院| 久久这里只有精品网| 激情综合网之激情五月| 亚洲熟妇无码乱子AV电影| 公的粗大挺进了我的密道| 日本视频欧美观看免费| 美女要搞搞天天搞搞搞网站| 欧美性爱五月天| 六月成人网| 91九色国产| 婷婷五月激情丁香| 五月开心久久| 青草少妇激情| 9热久久在线| 综合图区激情| av中文字幕免费观看| 丁香五月成人论坛| 国产乱人偷精品人妻A片| 亚洲免费99| 激情五月婷婷| 色五月激情五月丁香五月婷婷啪啪综合 | 久久香蕉网| 中文字幕av网站| 久久伊人五月天| 中文字幕av网站| 亚洲第一精品成人999久久精品| 色五月婷婷7777| 色六月天天激情综合网| 北京熟妇搡BBBB搡BBBB| 五月丁香六月婷婷无码| 中文字幕 码精品视频网站| 亚洲成人影视在线观看| 天天插天天插天天日| 日韩1区2区| 婷婷伊在线| 中文中文在线| 第四色首页| 超碰色综合| 亚洲激情婷婷| 五月婷婷这里都是精品| 99在线精品免费视频| 色色99色色| 色香蕉精品五夜婷| 六月婷婷八月丁香| 激情五月天在线观看色婷婷| 色吧婷婷五月亚洲| 综合久久人妻| 久久亚洲色导航| 日韩精品呦呦va| 亚洲婷婷91丁香| 五月丁香六月婷婷啪啪综合| 超碰在线资源| xx久久| 乱精品一区字幕二区| 久久99热免费最新版| 青青热久久综合| 六月激情丁香一道本7777| 狠狠人人婷婷| 五月丁香综合在线| 五月天影院| 俺去也五月| 99热九九热| 婷婷中文字幕| 成人五月天丁香| 欧美性爱专区| 国产精产国品一二三在观看| 99热精品在线观看| 五月激情影院| 五月激情小说| 99热亚洲精品| 久婷久婷| 超碰人人干| 最新va在线播放| 色人妻五月| 欧美久久五月婷婷| 婷婷五月 丁香六月| 啪啪啪综合网| 99操碰| 久久免费操| 天天综合网91| 操操啪| 婷婷五月天久久| 激情五月丁香五月| 97在线刺激| 色欧洲| 婷婷久久综合| 丁香五月激情五月| 99在线免费观看| 精品少妇人妻AV无码专区偷人| 五月丁香色综合| 中文字幕日产A片在线看| 九九99久久| 99精品久久久久| 亚洲综合久| 久久综合九九| 99久久人妻精品无码二区| 男女啪啪做爰高潮无遮挡| 五月色 亚洲| www.99热这里精品| 99热大香蕉| 婷婷亚洲欧美丁香五月| 九九性视频| 丁香婷婷月| www.夜夜| 亚洲AV日韩在线观看| 97色永久免费视频| 色婷婷成人影片| 91精品久久久久久综合五月天| 天天做天天爱综合| 激情婷婷久久| 久久五月婷| 久久婷婷五月天丁香| 激情五月天色| 五月天婷婷无码| 色综合激情| 午夜色婷婷| 人人干人人操外国| 综合丁香婷婷五月天| 99久久精彩视频。| 日操夜撸| 91日在线视频| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 任你躁XXXXX麻豆精品| 五月丁香久久激情综合| 五月天久久婷婷婷| 亚洲午夜av| 中文字幕丰满乱孑伦无码专区 | 疯狂做受XXXX高潮A片| 色色婷| 五月丁香好婷婷A片网| 色色色五月| 色五月婷婷五月久久| 五月天俺去也| 丁香五月天激情综合| 丁香 亚洲 久久| 色色色色色色色色色999| 狠狠色综合网| 噜噜噜噜噜日本视频| 狠狠操狠狠操| 任你草| 超碰99热精品| 偷拍91九色| 五月天色婷婷网| 五月天久久婷婷婷| 可以直接看的av| 日本啪啪网| 99毛片| 成人在线不卡| 色五月天电影| 成人在线高清| 狠狠爱激情网| www色婷婷久久综合久色| 淫五月停停| 九九机热| 亚洲婷婷视频| 久久99网| 激情美女五月天| 欧洲色| 婷婷六月激情丁香| 色婷大香蕉| 91操人| 五月婷视频| 六月丁香激情| 婷婷五月色惰| 亚洲小视频免费播放| 99原创自拍视频在线观看| 天天插天天插天天插天天插| 97久人人| 欧美性生交XXXXX无码小说| 婷婷丁香综合| 亚洲色图五月丁香| 日日夜夜干| 五月天伊人综合| 2025最新亚洲激情在线| 色啪影院| 国精产品一区二区三区| 色激情五月天| www夜夜| 26uuu欧美日韩| 99热10在线高清播放| 亚洲女婷婷五月基地综合久久久 | 夜夜穞天天穞狠狠穞AV美女按摩| 任我肏| 亚洲 五月 婷婷 成人| 亚州色婷婷| 五月天开心色色网| 亚洲综合婷婷| 亚洲综合在线丁香五月| 欧美黑人大吊| 九月婷婷色色| 中日韩狠狠色| AV色婷婷| 亚州操操| 五月丁香A片| 九九亚洲| www.色综合| 国产精品99久久久久久久女警| 国产无套精品一区二区| 久久亭亭电影| 99成人| 色狠狠综合| 九热视频| 综合激情五月天六月婷免费视频| 男人天堂亚洲综合| 色噜噜狠狠色综合日日| 亚洲视频在线观看99| 九九日本视频| 激情小说婷婷小说| 久久婷婷青草五月天| 婷婷五月天AV网| 伊人日日干| 天天射夜夜骑| 色99网站| 5五月综合网亚洲| 大天天伊人| 9l视频自拍9l九色成人| 超碰色热| 婷婷久久久| 艳妇野外情欲放荡HD| 中文字幕AV网址| 精品人妻在线| 六月丁香啪啪| 九九久久污| WWW.99视频| 色五月婷婷狠狠撸| 亚洲综合五月天| 亚洲精品色色色| 天天橾夜夜爽| 色欲午夜无码久久久久久张津瑜 | 九九人人操| WwW色婷婷| 情色五月天网站| 色网站99| 可以直接看的AV| 欧美精产国品一二三区| 性爱综合网| 啪啪丁香五月| 欧美天堂婷婷日韩| 玖玖色综合| 婷婷夜夜夜夜| 久久9视频| 台湾无码A片一区二区| 丁香五月天啪啪a日本| 九九亚洲综合| 亚洲超碰青涩| 精品九九视频| 九九久久精品| 激情五月丁香婷婷夜夜操| 色之综合网| av狠狠操| 九九色播五月丁香| 久久色情| 激情综合网五月| a片在线免费观看一区| 婷婷五月久久| 国产美女无遮挡裸体毛片A片| 五月天久久网站| 激情亚洲婷婷六月| 成人超碰AV| 公的粗大挺进了我的密道| 丁香婷五月天| 久久这里有精品| 婷婷亚州综合| 青青五月天婷婷| 色色欧美色色色| 婷婷五月天日日日干干干| 五月天激情国产综合婷婷婷| 九九十99视频| 婷婷五月激情丁香| www.婷婷五月天,com| 五月婷婷熟女| 婷婷99狠狠躁天天久久久九九九| 夜夜操少妇| 久99久视频精品| 亚洲成人婷婷| 超碰色色综合| 色播五月婷婷| 四色 爱 婷婷 精品 亚洲 五月天| 开心激情站| 久久9久| 天天激情综合| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 亚洲婷婷五月天| 26uuu.| 香蕉99网| 久久东京热婷婷五月| 97丁香婷婷| 五月丁香影院| www.深爱激情| 五月婷成人| 婷婷色狠狠| xx久久| www.思思99热| 先锋资源婷婷| 99热99思午夜精品| 婷婷激情四射五月天| 激情五月婷婷五月| 五月婷婷伊人网| 99婷婷综合| www色色com| 色五开心五月五月深深爱| 97久久久| 97色色综合| 嫩草AV久久伊人妇女超级A | www.五月丁香| 2015好吊操| 五月婷婷丁香| 9色视频在线| 热久69| 色五月激情| 丁香婷婷久久激情| 五月丁香久久精品在线观看| 成人片在线播放| 日韩免费99| 狠狠精品干练久久久无码中文字幕| 99久久激情视频| 国内裸舞二区| 婷婷舔| 色综合久久88色综合中文字幕| 久久婷婷五月天| 强奸幻女毛片| 9 7总站超级碰免费视频| 中文成人在线| 一级AV片| 就爱日五月天| 久婷首页| 婷婷色操| 99re热在线观看| 91九色欧美| 欧美六月婷婷| 婷婷五月综合色中文字幕| 丁香五月 性爱| 丁香五月婷婷图片综合| 国产真实乱了老女人视频| 国产精产国品一二三在观看| 大香蕉啪啪网| 亚洲视频在线网站| 欧美日本日韩| 天天日天天久久青青| 影音先锋高清无码资源网| 色色色com| 日韩黄色电影| 婷婷六月激情啪啪| 天天爽日日爽夜夜爽| 丁香九月婷婷色| 久久婷婷五月丁香网| 丁香六月婷婷综合| 久久38视频| 欧美日韩国产一区| 亚洲精品国产成人AV在线| 一本久久亚洲五月婷婷| 天天天天天天噜| 日韩欧美成人片| 高清资源站日A美A欧亚…| 国产毛片操B| 4399欧美另类视频| 激情五月综合ì香亚洲| 色丁香五月婷婷| 少妇综合网| 亚洲精品无码一区二区| www色哟哟| 1024人妻| 五月婷婷色播| 丁香五月婷婷影院| 激情五月激情综合俺也去婷婷小说| 婷婷六月天激情影院| 91精品久久久久久77777| 碰碰操91| 99热99热不卡| 九九热只有精品| 狠狠 久久| 五月丁香激情婷婷综合| 五月丁香激情啪啪| 久久五月天视频| 丁香五月婷婷色情综合| 五月天色综合| 二色AV| 五月丁香91| 91pornav在线| 激情综合色| 国产AV一区二区三区最新精品| 五月天丁香综合| 噜噜在线| 播丁香五月婷婷欧美| 99精品国产在热久久| 狼人婷婷久久| 久久性刺激| 永久免费一区二区三区| 99九九精品视频推荐| 男人的天堂五月丁香| 狠狠色丁香久久| 99久久9| 99日韩| 激情小说视频图片| 亚洲AV激情五月综合网| 婷婷影院A成人| 成人超碰Av| 综合六月久久| 欧美性丁香色色五月天干干| 免费国产视频| 五月天激情综合| 六月激情婷婷色| 天天色色天天| 怡红院院久久| 538任你爽视频不一样的| 2020日日干| 婷婷综合网| 99热网站| 深爱婷婷网| 丁香六月婷婷综合激情欧美 | 99热精品99| 成人五月天在线视频在线观看| 丁香婷婷婷五月综合色情| 婷婷五月六月| 人妻久久久久久久久妻久久久久| 色吧网综合| 99性视频| 亚亚州久久高潮| 九九碰九九爱97| 五月天色社区| 91人人操.COM| 色色色色色色网站| 五月天激情Av| 91精品久久久久久| 日韩精品一曲二曲三曲四曲五曲| 一起草性爱不卡视频| 五月婷婷69| 五月综合亚洲色| 玖玖@三月天天丁香婷婷| 99热精品中文字幕| www.久热| 久久视频这里99| WWW.桔色成人.COM入口| 开心六月丁香五月婷婷| 欧美在线干| 久久婷婷五月综合精品蜜芽| 成人国产欧美大片一区| 丁香五月手机在线| 91精品久久久久久| 人妻AV在线| 色婷婷丁香五月天| 天天日天天舔| 天天插天天射| 激情综合一| 天天干夜夜想| 天天综合网网欲色| 五月婷av| 色五月丁香五月天| 五月婷婷丁香俺日污视频| 26uuu激情五月天| 深情六月婷婷综合久久| 热的五码久久精品| 丁香五月图片| 可以直接看的AV网站| 白人荫道BBWBBB大荫道| 狠狠色综合网站久久久久| 亚洲 五月 婷婷 成人| 五月 婷婷 成人| 婷婷色五月色妇| 色综合综合网| 影音先锋一区二区三区| 天天干 夜夜爽| 久久综合九九| 综合激情五月天| 男人操女人高潮91视频| 夜色.cnm| 天天肏视频| 2025最新亚洲激情在线| 婷婷五月激情六月| 成人av免费观看| 这里只有精品96| 99精品女人天堂| 天天日天天狠狠操| 伊人网色婷婷五月天| 亚洲第一第二网站| 六月丁香激情网| 激情五月婷色| 91超级碰碰碰| 99热精在线九九久久保| 婷婷五月激情在线| 欧美va在线| 日韩不卡123| 婷婷综合色图| 丁香五月婷婷成人综合| 激情六月色| www.99热| 丁香五月婷婷深爱综合激情| 狠狠狠夜夜夜| 影音先锋美国A| 五月天婷婷三级黄| 天天插天天日| 99久久婷婷国产综合精品| 五月天成人综合| 五月丁香婷婷综合| 色婷婷女优有码五月亭| www久久五月com| www.色婷婷| 韩国情人在线电视剧免费观看高清版全集| 五月色综合网| 性色综合网| 66精品成人免费网站在线观看| 99亚洲精品| 久久99久久99精品免观看粉嫩| 丁香五月天电影| 午夜婷婷久久| 另类综合激情| 婷婷大乡焦噜噜| 九九精品自拍| 激情视频网址| 婷婷五月激情丁香| xx综合网| 日本在线观看91| 久久久久亚洲AV无码网影音先锋| www.99久久久久99| 人人操AV| 婷婷综合色图| 激情小说五月天| 天干干夜夜操| 五月久久丁香| 综合激情在线视频| 激情五月天之六月婷婷| 成人无码免费一区二区中文| 天天操天天操| 二级黄色毛片| 五月丁香啪。| 99精品免费视频| 婷婷丁香激情综合色情| 亚洲精品V天堂中文字幕| 激情综合六月| 丁香婷婷色九月| 午夜少妇在线观看视频| 噜噜狠狠色综合久| 色婷婷丁香九月| 精品一二三区久久AAA片| WWW.99视频| se99高清无码| 成人网页在线观看| 人妻久久久| 激情第四色| 免费一区二区三区| 亚洲AV成人精品日韩在线播放| 天天日天天干天天插天天射| www.婷婷六月天| 激情综合网激情五月俺也去| 丁香九九九九| 丁香五月天av| 国产婷婷五月天| 五六月婷婷久久| 六月婷婷综合网2| 久久久久久久人妻| 99玖玖免费视频| 伊人玖玖婷婷| 久久激情五月网| site:esunnet.com| 99自拍网| 久久久久8888| 1024在线观看免费视频| 亚洲综合网在线| 成人做爰A片免费看网站找不到了| 久久曰曰| 丁香五月影院| 五月婷婷色五月| 欧美色图天堂网| 五月丁香成年黄色| 六月合五月婷| 婷婷五月亚洲一本在线丁香| 五月天最新网| 久99在线视频| 久热免费| 能看的AV| 一级AV片| 人妻丰满精品一区二区A片| 夜夜爱网站| 成人国产欧美大片一区| 一级视频网址| 夜夜爱影院| 久久视频这里都是精品| 婷色成人| 久久久区区一久久久久久| 久久A V无码视频| 开心网五月色婷婷| 97碰人人操| 国产美女无遮挡裸体毛片A片| 色综合视频在线| 91九色PORNY中文啦| 九九色热| 另类激情五月| 玖玖午夜视频| www.婷婷com| AV成人在线播放| 国产成人网址| 六月婷婷色宗合| 97超碰人人操| 激情婷婷激情在线不卡| 噜噜噜噜噜在线| 亚洲色色色色| 久久人人妻| 日韩成人电泉AV| 电影蜘蛛女| 久久人人妻| 另类五月激情| 性色播| 天天干一干| 91人人人人人| 99视频这里只有免费精品| 这里只精品热在线18| 婷婷激情四射| 综合色五月天| 五月综合在线| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 人人超碰99| 婷婷久久视频| 久热91| 高清无码.com| 国产avapp 网| 丁香五月天激情四射网络不好| 亚洲色色色色色色色色色| 国产五月天欧美色| 无码人妻AV久久久一区二区三区| 亚洲性爱AV| 999热成人在线综合网| 欧美性爱五月天| 久久大香蕉视频| 伍月婷丁香花全集| 在线不卡AC| 开心五月深爱五月婷| 日韩视频99| 久久大香蕉| 九九国产精视频| 婷婷五月天基地| 婷婷五月天色网久| 午夜性做爰电影| 国产婷婷五月中文字幕高清| 夫妇交换刺激做爰| 婷婷在线五月天观看| 狠狠色婷婷777| 深爱五月月天| 亚洲第一成人AV| 六月丁香网| 色碰干| 五月婷婷综合在线| 丁香五月综合AV在线| 五月狠狠| 操一区| 日本熟女一区二区| 婷婷激情五月天小说| 久热人妻| 26uuu欧美亚洲日韩| 五月丁香综合网| 日本狠狠干| 午夜婷婷五月天| 9久久精品| 欧美激情 日韩无码 婷婷 五月天| 中文AV网站| 五月久久五月激情| 激情五月天丁香| 999热在线视频| 大香蕉av在线| 婷婷丁香六月天激情四射网| 操日视频| 五月婷婷av| 五月丁香综合精品| 五月丁香久久网| 欧美丰满熟妇BBB久久久| 激情丁香九九五月综合网| 久久丁香五月婷婷| 九九碰九九爱97超碰| 激情精品久久| 国产成人综合电影| 色六月婷婷| 五月婷婷丁香狠狠撸久久| 亭亭玉立国色天香| 美国不卡视频| 色99超碰| 色爱爱综合网| 亚洲成人在线在线| www久久99| 久青操| √天堂资源在线人妻熟女| 少妇达人正片在线播放_ikun_福利吧| 丁香五月六月久久综合 | 综合久久十| 天堂网亚洲色图| www99xxxx五月丁| 久久婷婷七月丁香| 99热有精品在线观看| 亚洲天堂碰碰婷婷| 色婷婷成人色网| 91人人妻人人操人人爽| 99在线视频网址在线观看| 国产亚洲成AV人片在线观黄桃| 99精品偷自拍| 7EzOBIhNq85TO| 婷婷狠狠干| 狠狠爱婷婷五月天| 99热全是精品| 91九色超碰| 超碰京东热av男人的天堂| 婷婷激情综合色五月久久91| 亚洲亚洲人成综合网络| 91丨九色丨首页| 99视频在线看| 超91在线视频| 五月激情综合网| 婷婷五月激情热播| 天天舔天天摸天天射| 丁香五月亚综合图片| 99啪啪视频| 激情五月婷婷老师| 久久99网址| 九九热在线观看6| 牛牛碰免费| 欧美综合123区| 综合婷婷| 色色色在线| 五月丁香综合精品| 性色婷婷| 少妇人妻丰满做爰XXX| 婷婷性爱视频在线| 婷婷五月丁香六月伊人网| 激情综合亚洲色婷婷五月| 久久综合激情| 一区二区三区四区牛| 这里只有精品99www| 色综合久久88色综合天天99| 影音先锋91在线资源站| 99re视频在线播放| 深爱婷婷丁香五月激情| 91碰| 国产FREESEXVIDEOS性中国 | 亚洲操女| 丁香六月婷婷综合麻豆| 激情五月天在线免费美女视频| 婷婷久久综合| 91超碰在线播放| 青青草婷婷综合五月| 伊人久久婷婷| 五月婷婷丁香网| 婷婷深爱五月丁香| 久久丁香网| 嫩草AV久久伊人妇女超级a| 99精品成人无码A片观看金桔| 久久性爱视频| 久人操| 影音先锋毛片网站| va亚洲中文在线| 丁香五月天亚洲综合| 五月婷色丁香| 色综合久久久久| 激情五月第四色| 久久综合丁香激情五月| 六月色播| www.黄色片-久久成人国产精品在线播放-999AV | 免费亚洲婷婷中文字幕| 五月丁香| 天天日夜夜草进麻麻的子宫| 庭庭久久内射| www.五月天婷婷.com| 大香蕉婷婷| 99re最新地址| 麻豆精品| 狠狠操综合| 国产高清RV综合aVa|