日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

豆瓣電影數(shù)據(jù)集清洗與推薦系統(tǒng)實戰(zhàn):從CSV到SQLite全流程

豆瓣電影數(shù)據(jù)集清洗與推薦系統(tǒng)實戰(zhàn):從CSV到SQLite全流程 簡介這份豆瓣電影數(shù)據(jù)集以SQLite數(shù)據(jù)庫與CSV表格形式沉淀約10萬條電影相關(guān)記錄面向數(shù)據(jù)分析初學(xué)者、推薦系統(tǒng)開發(fā)者及影視市場研究人員可用于用戶觀影偏好挖掘、電影屬性分析與影評情感洞察。包內(nèi)共4個文件兩個csv分別承載用戶評分歷史、昵稱注冊信息與電影片名、導(dǎo)演、類型、上映年份等基礎(chǔ)資料db文件收錄觀影記錄及影評互動內(nèi)容py腳本則為豆瓣數(shù)據(jù)爬蟲源碼可作為requests與BeautifulSoup庫的實戰(zhàn)示例。借助用戶行為與電影屬性可實踐推薦算法與觀影偏好分析影評互動內(nèi)容則支持情感挖掘與社交網(wǎng)絡(luò)研究。數(shù)據(jù)覆蓋從采集、清洗到結(jié)構(gòu)化存儲的完整鏈路便于學(xué)習(xí)將網(wǎng)頁信息整理為可分析表格與數(shù)據(jù)庫的方法。整個壓縮包約40.02MB已有3442人下載學(xué)習(xí)適合期望以真實數(shù)據(jù)提升數(shù)據(jù)處理與爬蟲實戰(zhàn)能力的讀者。1. 為什么要折騰一份豆瓣電影數(shù)據(jù)集從冷啟動到推薦系統(tǒng)的練手樣本拿到《豆瓣電影數(shù)據(jù)集10萬.zip》這種資源第一反應(yīng)通常是“又是一份壓縮包”但真正打開后你會發(fā)現(xiàn)這 10 萬條數(shù)據(jù)其實就是一份結(jié)構(gòu)化的電影行為記錄字段覆蓋電影基本信息、評分、評論人數(shù)、類型標(biāo)簽和上映時間維度基本能支撐從 Pandas 清洗到推薦系統(tǒng)召回評估的完整鏈路。我當(dāng)時是在做一個模擬項目X的推薦系統(tǒng)冷啟動環(huán)節(jié)需要一份包含用戶評分和電影元數(shù)據(jù)的樣本集找了一圈公開數(shù)據(jù)要么是英文的 MovieLens要么是爬蟲抓來的半結(jié)構(gòu)化 JSON處理成本反而比這份 zip 更高。豆瓣數(shù)據(jù)集的優(yōu)點在于字段語義清晰中文標(biāo)簽完整評分分布貼近真實用戶行為適合用來驗證協(xié)同過濾算法在稀疏矩陣下的表現(xiàn)。整份 zip 適合幾類人想練特征工程的初學(xué)者、需要做離線評估的推薦系統(tǒng)開發(fā)者以及做電影數(shù)據(jù)分析報告的學(xué)生。它不能直接當(dāng)生產(chǎn)數(shù)據(jù)用但作為研究樣本價值足夠?qū)崱?. 解壓之后的數(shù)據(jù)結(jié)構(gòu)先弄清這 10 萬條到底存了什么打開 zip 之前我先說明一個經(jīng)驗電影類數(shù)據(jù)集最常見的翻車點不是文件損壞而是你假設(shè)的字段順序和實際完全對不上。解壓后我的做法是先別急著寫分析代碼而是用命令行工具快速掃一遍文件格式和編碼再用腳本打印前幾行確認(rèn)結(jié)構(gòu)。這個項目的壓縮包內(nèi)部包含一個核心 CSV 文件每一行對應(yīng)一部電影字段基本覆蓋電影名稱、導(dǎo)演、編劇、主演、類型、制片國家/地區(qū)、語言、上映日期、片長、又名、IMDb 鏈接、豆瓣評分、評價人數(shù)、標(biāo)簽top250 標(biāo)記、劇情簡介和短評片段。不同來源的版本字段排列會略有差異所以第一步一定是確認(rèn)列名而不是直接按記憶中的索引去讀。2.1 文件格式與編碼用 file 命令和 Python 雙重確認(rèn)拿到 zip 后我習(xí)慣先做一次“體檢”用unzip -l查看壓縮包內(nèi)文件列表確認(rèn)是否只有一個 CSV 還是有多個分片文件然后解壓到獨立目錄避免和項目代碼混在一起。接著用file命令檢測編碼因為 CSV 的編碼決定了后面 Pandas 讀取時的參數(shù)選擇這一步翻車最常見很多人直接默認(rèn) UTF-8結(jié)果讀出來中文全是亂碼其實文件是 GBK 或 GB18030 編碼。下面是我常用的檢查流程unzip -l 豆瓣電影數(shù)據(jù)集10萬.zip mkdir -p douban_data unzip 豆瓣電影數(shù)據(jù)集10萬.zip -d douban_data/ file douban_data/*.csv邏輯說明unzip -l先列出壓縮包內(nèi)部結(jié)構(gòu)不實際解壓用于確認(rèn)是否包含多個文件mkdir -p創(chuàng)建獨立目錄防止文件散落file命令輸出文件的字符編碼檢測結(jié)果比如UTF-8 Unicode text或ISO-8859 text如果是后者說明文件實際是 GBK 系編碼后面讀取時要指定encodinggbk。參數(shù)方面沒有額外的坑唯一需要注意的是file對中文編碼的檢測有時不準(zhǔn)它會輸出ISO-8859這其實是 GBK 被誤判了所以還得靠 Python 來做最終確認(rèn)。然后用 Python 做二次確認(rèn)這一步的核心是打印前幾行原始字節(jié)觀察中文是否能被正確解碼import chardet with open(douban_data/douban_movie.csv, rb) as f: raw f.read(10000) result chardet.detect(raw) print(result) print(raw[:500])邏輯說明chardet.detect會返回一個包含編碼和置信度的字典比如{encoding: GB2312, confidence: 0.99}這個信息直接決定 Pandas 的encoding參數(shù)怎么寫。打印原始字節(jié)能肉眼觀察文件開頭是否有 UTF-8 的 BOM 標(biāo)記\xef\xbb\xbf以及中文是否存在。注意chardet不是標(biāo)準(zhǔn)庫如果沒有安裝可以用pip install chardet先裝上或者退一步用encodingutf-8和encodinggbk輪換嘗試。2.2 字段全解每一列是什么、能用來做什么確認(rèn)完編碼后最該做的一件事是把字段語義弄清楚。我一般會用 Python 讀取數(shù)據(jù)后逐列打印非空值數(shù)量和樣例值這一步能過濾掉很多后面分析時的玄學(xué)問題。下面是一段快速概覽代碼import pandas as pd df pd.read_csv(douban_data/douban_movie.csv, encodingutf-8) print(df.shape) print(df.columns.tolist()) print(df.dtypes) print(df.isna().sum()) print(df.head(3).T)邏輯說明read_csv的encoding參數(shù)改成第一步確認(rèn)的編碼.shape輸出行數(shù)和列數(shù)確認(rèn) 10 萬條是否真實.columns.tolist()輸出所有列名方便后續(xù)按名稱操作.dtypes查看每一列的數(shù)據(jù)類型識別哪些列被誤讀成了字符串.isna().sum()統(tǒng)計每列缺失值數(shù)量這個數(shù)字直接暴露數(shù)據(jù)質(zhì)量.head(3).T轉(zhuǎn)置打印前 3 行所有字段一眼看全每列的內(nèi)容形態(tài)。參數(shù)說明方面read_csv還需要注意兩個常用參數(shù)low_memoryFalse可以避免混合類型時出現(xiàn)的 DtypeWarningon_bad_linesskip可以在某些行字段數(shù)量不一致時跳過而不是直接報錯。不過我不建議一開始就用skip而是先讓它報錯觀察錯誤行數(shù)再決定是手工修復(fù)還是跳過因為跳過的行可能包含有效信息這種處理方式能讓后續(xù)分析更干凈。這份數(shù)據(jù)集的字段中最有價值的幾個是douban_score評分、comment_num評論人數(shù)、movie_type類型標(biāo)簽、release_date上映日期、director和actors。評分和評論人數(shù)可以做回歸預(yù)測或評分分布統(tǒng)計類型標(biāo)簽可以做多標(biāo)簽分類上映日期可以提取年份做時間趨勢分析導(dǎo)演和演員可以做協(xié)作過濾的冷啟動特征。劇情簡介雖然是文本但長度參差不齊適合用來做 NLP 分類的附加特征不過清洗成本較高后面我會單獨說。3. 數(shù)據(jù)清洗實戰(zhàn)從 10 萬條原始數(shù)據(jù)到結(jié)構(gòu)化分析表原始數(shù)據(jù)不能直接喂給算法這一步?jīng)]必要太急優(yōu)先解決三件事重復(fù)值、缺失值和類型不統(tǒng)一。豆瓣電影數(shù)據(jù)集雖然整體質(zhì)量尚可但因為是爬蟲聚合的結(jié)果會出現(xiàn)同一個電影名在不同行有細(xì)微差異、評分列混入“暫無評分”這類文本、日期格式不統(tǒng)一等問題。我在這份數(shù)據(jù)上花的時間占比大約是清洗 60%分析 30%建模 10%這比例不算夸張真實項目里清洗永遠(yuǎn)是大頭。3.1 去除重復(fù)項與處理缺失值先拿掉臟數(shù)據(jù)重復(fù)項在電影數(shù)據(jù)里很容易被忽略因為同一部電影可能有多個版本比如大陸版和港版片名完全一致但上映年份不同。清洗時應(yīng)該先基于“電影名 導(dǎo)演 上映年份”做組合去重而不是只按電影名去重否則會把不同版本錯誤合并。下面是我的處理邏輯# 先看完全重復(fù)的行有多少 print(df.duplicated().sum()) # 基于業(yè)務(wù)主鍵去重電影名 導(dǎo)演 年份 df[year] pd.to_datetime(df[release_date], errorscoerce).dt.year df_dedup df.drop_duplicates(subset[movie_name, director, year], keepfirst) print(f去重前: {len(df)}, 去重后: {len(df_dedup)})邏輯說明pd.to_datetime把字符串日期統(tǒng)一轉(zhuǎn)成 datetime 類型errorscoerce的用法是把無法解析的日期變成NaTNot a Time這樣不會讓整個轉(zhuǎn)換報錯.dt.year提取年份字段drop_duplicates的subset參數(shù)指定列子集作為判斷重復(fù)的依據(jù)keepfirst保留第一次出現(xiàn)的行。print 兩種行數(shù)對比能直觀看到重復(fù)比例的嚴(yán)重程度。參數(shù)說明errorscoerce是這里的關(guān)鍵參數(shù)如果不加只要有一行日期格式異常整個to_datetime就會拋異常subset參數(shù)不寫的話則是全列去重對于電影數(shù)據(jù)來說幾乎找不到完全相同的行起不到去重效果。在實際項目里我還會把director列做一次標(biāo)準(zhǔn)化去掉首尾空格、統(tǒng)一全角半角否則“張藝謀”和“張藝謀 ”會被當(dāng)成兩個不同導(dǎo)演這一步能被很多人忽略但非常關(guān)鍵。缺失值處理策略取決于分析目標(biāo)。如果是做評分預(yù)測評分缺失行直接刪掉是最安全的如果是做類型分布統(tǒng)計類型字段缺失可以填未知而actors和plot這種文本字段缺失了也不影響結(jié)構(gòu)化分析沒必要強行填充。我一般不會用fillna一把梭而是分列處理因為不同列的缺失含義完全不同。3.2 評分與評論數(shù)目的數(shù)據(jù)類型轉(zhuǎn)換這個數(shù)據(jù)集里最容易翻車的字段就是評分和評論人數(shù)。很多行看起來是數(shù)字實際在 CSV 里被存成了字符串比如8.9、12,345、暫無評分。直接用astype(float)會當(dāng)場報錯。我的做法是先做一次強制轉(zhuǎn)換然后統(tǒng)計轉(zhuǎn)換失敗的行再單獨處理這些異常值# 先轉(zhuǎn)成字符串去掉千分位逗號 df[comment_num] df[comment_num].astype(str).str.replace(,, , regexFalse) # 把無法轉(zhuǎn)成數(shù)字的值變成 NaN df[comment_num] pd.to_numeric(df[comment_num], errorscoerce) # 評分列同樣處理并轉(zhuǎn)換為 float df[douban_score] pd.to_numeric(df[douban_score], errorscoerce) print(df[[douban_score, comment_num]].dtypes) print(df[[douban_score, comment_num]].isna().sum())邏輯說明astype(str)先確保列內(nèi)所有值都是字符串否則.str.replace會報錯regexFalse表示把逗號當(dāng)作普通字符替換不需要正則解析pd.to_numeric配合errorscoerce會把所有不能轉(zhuǎn)成數(shù)字的值變成 NaN包括空字符串、暫無評分、未知 這類臟值。最后打印類型和缺失值數(shù)量就知道有多少臟數(shù)據(jù)混進(jìn)來了。這里的一個關(guān)鍵點處理完后需要重新決定這些 NaN 行是刪還是留。我的經(jīng)驗是如果一行的評分和評論人數(shù)都是 NaN那這部電影對大部分分析場景都沒價值建議直接刪掉如果只是評論人數(shù)缺失而評分正常這行還能用于評分分布分析。所以清洗代碼要按列決定行去留而不是一刀切。3.3 導(dǎo)演、演員和類型的多值拆分電影數(shù)據(jù)集中導(dǎo)演、演員和類型這幾個字段通常是用斜杠/、逗號或空格分隔的多個值。比如劇情/愛情/歷史萊昂納多·迪卡普里奧/湯姆·哈迪。做分析時你可能需要把類型拆開統(tǒng)計而不是把整個字符串當(dāng)作一個標(biāo)簽。下面是一段常見的拆分處理def split_field(value): if pd.isna(value): return [] return [x.strip() for x in str(value).replace( / , /).split(/) if x.strip()] df[type_list] df[movie_type].apply(split_field) df[actor_list] df[actors].apply(split_field) # 統(tǒng)計出現(xiàn)最多的10個類型 from collections import Counter type_counter Counter([t for lst in df[type_list] for t in lst]) print(type_counter.most_common(10))邏輯說明split_field函數(shù)首先判斷是否為空值然后把/兩側(cè)的空格去掉再按/分割最后過濾掉空字符串a(chǎn)pply將函數(shù)應(yīng)用到每一行生成新的列表列。Counter統(tǒng)計所有類型標(biāo)簽的頻次most_common(10)輸出前 10 個高頻標(biāo)簽便于快速了解數(shù)據(jù)集的類型分布。注意replace( / , /)這個步驟不能省因為原始數(shù)據(jù)中分隔符有的是 / 斜杠兩邊帶空格有的是/如果不統(tǒng)一按/split 后會出現(xiàn)帶首尾空格的標(biāo)簽比如劇情 和劇情這是兩個不同的標(biāo)簽統(tǒng)計時會各算各的導(dǎo)致結(jié)果看起來很奇怪這種情況我見過很多次。另一種寫法是直接在split后用 strip 清理效果一樣但寫進(jìn)函數(shù)里更通用。4. 數(shù)據(jù)入庫與查詢把 10 萬條電影數(shù)據(jù)裝進(jìn) SQLite 分析清洗完數(shù)據(jù)后我建議把它寫入 SQLite而不是一直留在 Pandas DataFrame 里。原因有三一是 Pandas 對內(nèi)存的占用會隨著數(shù)據(jù)量線性上升10 萬行雖然不算大但加上類型列表和演員列表的 Python 對象開銷實際占用會明顯超出預(yù)期二是 SQL 查詢適合做分組聚合并能讓結(jié)果可復(fù)現(xiàn)比反復(fù)寫 Pandas 鏈?zhǔn)讲僮鞲逦呛罄m(xù)做推薦系統(tǒng)離線評估時SQLite 的隨機(jī)讀取能力比 CSV 快得多。SQLite 是 Python 標(biāo)準(zhǔn)庫自帶支持的數(shù)據(jù)庫不需要安裝任何額外的服務(wù)非常適合本地數(shù)據(jù)和單機(jī)分析。4.1 設(shè)計表結(jié)構(gòu)與批量寫入把清洗后的 DataFrame 寫入 SQLite表結(jié)構(gòu)設(shè)計要盡量貼合查詢需求。我的做法是拆成兩張表一張movies電影主表一張movie_types類型關(guān)聯(lián)表。拆表能避免類型多值存儲在一個字段里導(dǎo)致無法高效查詢。import sqlite3 conn sqlite3.connect(douban_movies.db) cursor conn.cursor() # 創(chuàng)建電影主表 cursor.execute( CREATE TABLE IF NOT EXISTS movies ( id INTEGER PRIMARY KEY AUTOINCREMENT, movie_name TEXT, director TEXT, year INTEGER, douban_score REAL, comment_num INTEGER, release_date TEXT, actors TEXT ) ) # 創(chuàng)建類型關(guān)聯(lián)表 cursor.execute( CREATE TABLE IF NOT EXISTS movie_types ( movie_id INTEGER, type_name TEXT, FOREIGN KEY (movie_id) REFERENCES movies(id) ) ) # 批量寫入電影主表 df_clean[[movie_name, director, year, douban_score, comment_num, release_date, actors]].to_sql( movies, conn, if_existsappend, indexFalse ) conn.commit()邏輯說明CREATE TABLE IF NOT EXISTS確保重復(fù)執(zhí)行腳本不會報錯movies表用自增主鍵id標(biāo)識每部電影movie_types表通過movie_id外鍵關(guān)聯(lián)主表每行存一個類型標(biāo)簽。to_sql是 Pandas 的便捷方法if_existsappend表示如果表已存在則追加數(shù)據(jù)indexFalse表示不把 DataFrame 的索引寫入數(shù)據(jù)庫。參數(shù)方面的關(guān)鍵點to_sql在寫入大量數(shù)據(jù)時默認(rèn)是逐行 INSERT速度還可以但不夠快想要更快可以把methodmulti參數(shù)加上生成批量 INSERT 語句10 萬行數(shù)據(jù)從慢的 10 秒級優(yōu)化到 1 秒級。但methodmulti需要較新的 Pandas 和 SQLite 版本支持如果報 OFFSET 相關(guān)的錯誤說明 SQLite 版本太老需要升級或改用默認(rèn)方式。type 關(guān)聯(lián)表的寫入必須在 movies 表寫入之后因為需要拿到movies表的自增id來關(guān)聯(lián)類型一種做法是寫入 movies 后用cursor.lastrowid獲取當(dāng)前插入的 ID再逐行插入類型。4.2 用 SQL 做探索性分析評分分布和類型熱度數(shù)據(jù)入庫后分析起來就順手多了。我分享兩個高頻查詢一個是按年份看平均評分趨勢另一個是按類型統(tǒng)計電影數(shù)量和平均評分這兩條 SQL 能快速給出一份數(shù)據(jù)報告的骨架。-- 按年份統(tǒng)計電影數(shù)量、平均評分、平均評論數(shù) SELECT year, COUNT(*) AS movie_cnt, ROUND(AVG(douban_score), 2) AS avg_score, ROUND(AVG(comment_num), 1) AS avg_comment FROM movies WHERE year BETWEEN 1990 AND 2024 AND douban_score IS NOT NULL GROUP BY year ORDER BY year;邏輯說明WHERE year BETWEEN 1990 AND 2024過濾掉異常年份比如 0 或 1895 這樣的臟數(shù)據(jù)AND douban_score IS NOT NULL確保平均值不被 NaN 污染ROUND(AVG(...), 2)控制小數(shù)位數(shù)讓結(jié)果更易讀。GROUP BY year按年份分組ORDER BY year讓結(jié)果按時間排序方便后續(xù)畫趨勢圖。注意comment_num如果之前清洗時保留了一些為 0 的值A(chǔ)VG會把它們算進(jìn)去如果統(tǒng)計的是評論熱度可能需要額外加一個comment_num 0條件。第二個查詢類型熱度可以這樣寫-- 類型熱度按類型統(tǒng)計電影數(shù)、平均評分 SELECT t.type_name, COUNT(*) AS movie_cnt, ROUND(AVG(m.douban_score), 2) AS avg_score FROM movie_types t JOIN movies m ON t.movie_id m.id WHERE m.douban_score IS NOT NULL GROUP BY t.type_name HAVING COUNT(*) 10 ORDER BY movie_cnt DESC LIMIT 20;邏輯說明JOIN movies m ON t.movie_id m.id把類型表和主表關(guān)聯(lián)起來HAVING COUNT(*) 10是個好習(xí)慣它會過濾掉只出現(xiàn)幾次的冷門類型只統(tǒng)計樣本量足夠的類型避免一兩部高分電影把平均分拉得很高。ORDER BY movie_cnt DESC LIMIT 20輸出出現(xiàn)次數(shù)最多的 20 個類型。這個查詢的結(jié)果我會導(dǎo)出成 CSV 再畫成柱狀圖觀察數(shù)據(jù)集的類型分布是否偏斜。豆瓣電影數(shù)據(jù)集中常見的情況是“劇情”和“愛情”類型數(shù)量明顯偏多“紀(jì)錄片”類型相對較少這種不均衡直接影響了后續(xù)推薦系統(tǒng)的評估方式如果直接拿全量數(shù)據(jù)做訓(xùn)練模型會對頭部類型過擬合后面離線評估的指標(biāo)就會被“劇情片”主導(dǎo)。5. 避坑指南豆瓣電影數(shù)據(jù)集常見的五個坑及對應(yīng)解法這一章全是實操中真實的踩坑記錄每一條我都親自趟過耗費的時間短則十分鐘長則一下午寫下來給后來者省點時間。踩坑一讀取 CSV 時中文亂碼或直接報 UnicodeDecodeError現(xiàn)象pd.read_csv報錯utf-8 codec cant decode byte 0xd5 in position 10或者讀出來中文變成一堆亂碼。原因這份數(shù)據(jù)集的編碼不是 UTF-8而是 GBK 或 GB18030尤其是在 Windows 環(huán)境下導(dǎo)出 CSV 的 Python 腳本自帶 GBK 編碼。解決先用chardet.detect()檢測實際編碼然后用對應(yīng)編碼讀取如果檢測結(jié)果是ISO-8859或置信度很低直接試用encodinggb18030這個編碼比gbk覆蓋更廣能兼容更多生僻字。從那以后我每次拿到 CSV第一步就是跑一次chardet不在這上面賭運氣。踩坑二用默認(rèn)參數(shù)讀 CSV 時出現(xiàn) DtypeWarning現(xiàn)象讀取 10 萬行數(shù)據(jù)后控制臺輸出DtypeWarning: Columns have mixed types。原因某些字段比如comment_num在不同行分別是整數(shù)和字符串比如暫無Pandas 自動推斷類型失敗。解決在read_csv時手動指定各列的類型或者使用low_memoryFalse。更穩(wěn)的做法是先讀一次獲取列名再手動指定可疑列的類型為str統(tǒng)一走一遍清洗流程最后再轉(zhuǎn)成正確的數(shù)值類型這樣 DtypeWarning 就不會出現(xiàn)了。踩坑三年份列出現(xiàn) 0 或異常值導(dǎo)致統(tǒng)計結(jié)果失控現(xiàn)象SELECT year, AVG(...)出來的數(shù)據(jù)里出現(xiàn) 1895 年這種老掉牙年份甚至 year 為 0計算結(jié)果明顯異常。原因原始數(shù)據(jù)中release_date可能有缺失、空字符串或格式不標(biāo)準(zhǔn)的日期比如2000-00-00pd.to_datetime解析成 2000 年或者解析失敗返回 NaT再提取年份時得到 NaN有些小白會在后面填 0。解決在提取年份后加一個過濾條件只保留 1900 到當(dāng)前年份之間的值范圍內(nèi)外的直接賦為 NaN。我后來寫了個通用函數(shù)年份不在合理區(qū)間的一律置空寧缺毋濫。踩坑四類型字段的標(biāo)簽被空格和分隔符污染統(tǒng)計結(jié)果分裂現(xiàn)象Counter統(tǒng)計出的 Top 10 類型里同時出現(xiàn)劇情和劇情 兩個標(biāo)簽的原始含義相同但被統(tǒng)計成兩類。原因原始數(shù)據(jù)里劇情 / 愛情和劇情/愛情混用按/分割后帶空格的標(biāo)簽沒有被清理。解決split之后一定對每個元素執(zhí)行strip()或者先做一次全局替換把 / 統(tǒng)一為/。這個坑是我在前 1000 行數(shù)據(jù)上觀察到的前 1000 行恰好都是統(tǒng)一的 / 格式讓我誤以為所有數(shù)據(jù)格式一致直到看完整數(shù)據(jù)集才發(fā)現(xiàn)這個問題所以建議清洗后用Counter統(tǒng)計一遍標(biāo)簽的分布檢查是否有相似標(biāo)簽。踩坑五寫入 SQLite 時外鍵關(guān)聯(lián)出錯類型表數(shù)據(jù)對不上現(xiàn)象movie_types表中的movie_id和movies表的id對不上JOIN 出來結(jié)果為空或數(shù)據(jù)錯位。原因?qū)懭?movies 表后cursor.lastrowid拿到的 ID 并不是當(dāng)前 DataFrame 行對應(yīng)的 ID尤其是在to_sql批量寫入或自增 ID 因為之前刪除操作而跳號的情況下用行序號去推斷 ID 完全是靠玄學(xué)。解決不要依賴lastrowid而是寫入 movies 表后通過查詢把 DataFrame 的movie_name director year與表內(nèi)記錄匹配得到真實 ID 再插入類型表。這一步慢一些但絕對可靠10 萬行的連接查詢在 SQLite 上耗時也就是幾秒完全能接受。6. 進(jìn)階用法從靜態(tài)數(shù)據(jù)集到輕量級特征工程與相似度檢索前面的步驟如果做完了你已經(jīng)擁有了一份干凈的、存儲在 SQLite 中的豆瓣電影結(jié)構(gòu)化數(shù)據(jù)。最后一章我想把用法再推進(jìn)一步如何用這份數(shù)據(jù)做電影相似度檢索。這個需求在實際項目中很常見比如推薦系統(tǒng)詳情頁里的“喜歡這部電影的人也喜歡”就是一個典型的基于內(nèi)容特征的 TopN 相似度檢索場景適合構(gòu)建基線用的原型驗證代碼。特征工程方面我會把電影的類型標(biāo)簽做成 One-Hot 特征或多熱編碼特征然后使用余弦相似度計算電影之間的相似性。這里用 TF-IDF 加余弦相似度來處理類型標(biāo)簽而不是直接用 One-Hot因為類型標(biāo)簽本身是稀疏的直接用 One-Hot 會讓所有電影之間的相似度普遍偏低而且毫無區(qū)分度。下面是一段可運行的代碼from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.metrics.pairwise import cosine_similarity # 把類型列表重新拼回字符串用空格分隔 df_clean[type_str] df_clean[type_list].apply(lambda x: .join(x)) # 使用 TF-IDF 向量化類型標(biāo)簽 vectorizer TfidfVectorizer(token_patternr\S) tfidf_matrix vectorizer.fit_transform(df_clean[type_str]) # 計算余弦相似度矩陣 similarity_matrix cosine_similarity(tfidf_matrix, tfidf_matrix) def recommend_by_id(movie_id, top_n10): sim_scores list(enumerate(similarity_matrix[movie_id])) sim_scores sorted(sim_scores, keylambda x: x[1], reverseTrue) sim_scores sim_scores[1:top_n 1] sim_indices [i[0] for i in sim_scores] return df_clean.iloc[sim_indices][[movie_name, douban_score]].values.tolist() # 測試一部電影的推薦結(jié)果 print(recommend_by_id(0, top_n10))邏輯說明type_str把類型列表合并成空格分隔的字符串因為TfidfVectorizer的默認(rèn) token 模式是按空格分詞token_patternr\S暗示按非空白符分 token避免中文被默認(rèn)的正則拆成單字這是一個很實用的調(diào)整cosine_similarity返回 N×N 的相似度矩陣similarity_matrix[movie_id]取某一行的相似度向量enumerate拿到電影索引和相似度分?jǐn)?shù)排序后跳過自己[1:top_n1]返回 Top N 結(jié)果。這樣做出來的推薦雖然只用了類型一個特征但對于原型驗證完全夠用。如果想要更好的效果可以把導(dǎo)演和演員也加進(jìn)特征向量里比如把director和actors拼到type_str后面用 TF-IDF 一起向量化。不過要注意演員列拼接后特征空間會變大10 萬行數(shù)據(jù)對應(yīng)的詞表可能有數(shù)萬個詞計算相似度矩陣的時間會從秒級漲到分鐘級做實驗前要有預(yù)期。如果只做 TopN 檢索而不是計算全量相似度矩陣可以考慮用pairwise_distances的n_jobs-1參數(shù)做并行計算或者改用sklearn.neighbors.NearestNeighbors的metriccosine來避免顯式構(gòu)建 N×N 矩陣這個在數(shù)據(jù)量到 50 萬行以上時是必須做的優(yōu)化。如果要做推薦系統(tǒng)的離線評估我的習(xí)慣是先把數(shù)據(jù)按 8:2 劃分訓(xùn)練集和測試集在訓(xùn)練集上計算相似度矩陣然后對測試集中的每一部電影用它最相似的若干電影來預(yù)測評分再計算 RMSE 或 PrecisionN。這套流程 10 萬條數(shù)據(jù)跑下來速度完全可以接受比你在網(wǎng)上找的一大堆 Jupyter Notebook 示例更貼合真實開發(fā)環(huán)境。最后補一句我在這個數(shù)據(jù)集上翻過最大的一個教訓(xùn)拿到數(shù)據(jù)集后一定不要急著建模先把字段語義、編碼、缺失值、重復(fù)項這四個基礎(chǔ)問題全部清干凈再做探索性分析最后才是模型。那一次我直接在未清洗的數(shù)據(jù)上跑出了很高的精度指標(biāo)覺得很興奮后來發(fā)現(xiàn)是因為測試集里混了訓(xùn)練集的重復(fù)樣本屬于嚴(yán)重的數(shù)據(jù)泄漏結(jié)果毫無意義。從那以后我每次拿到數(shù)據(jù)都強制走一遍清洗流程哪怕看起來再干凈的數(shù)據(jù)也當(dāng)臟數(shù)據(jù)對待希望這套流程能幫你在做自己的項目時少走一點我走過的彎路。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日韩美女操b| 欧美亚洲清纯| 熟女熟妇一区二区三区视频| 视频一区二区三区精品| 亚洲.欧美.丝袜.中文.综合| 国产九九九九九九| 国产剧情AV不卡在线观看| 午夜欧美J进J出白浆流出久久久| 青娱乐啪啪视频| 九九在线视频| 96超碰网| JULIA人妻风俗店中出电影| 欧美综合网在线| 女色视频社区| 男人天堂2017| 爆乳免费黄网站| 国产精品熟女一区二区三区| 亚洲麻豆精品二区三区| 三级三级三级a级全黄三| 51久久夜色精品国产麻豆| 大香蕉免费3| 亚洲综合网电影91| 欧美福利视频啊啊啊啊| 狼人综合婷婷激情四射 | 日韩无码人妻| 黄色网址久久精品欧美喷水| 97视频免费播放| 五月婷婷激情综合| 伊人五月天婷婷| 青青草色情网站视频| 在线毛片片免费观看| 国产久久视频| 国产精品宅男免费| 人妻第一页| 亚洲另类综合欧美| 亚洲制服aⅴ中文字幕| 丰满精品人妻少妇久久字幕| 超碰人人超在线观看| 亚洲色图片区| 91美女在线视频| 国产黄色 A 片免费看| 久久噜噜噜精品国产亚洲综合| 久久久久成人亚洲国产| 大香蕉中文网| 自拍视频大全亚洲专媒视频/一区二区三区 | 大香蕉乱伦视频网| 国产精品久久aV| 99RE在线视频精品,这里只有精品| 91成人高清在线观看| 伊人伊人LD| 极品美女福利在线观看| 国产亚洲色停停久久99精品91| 欧美97在线观看| 日韩一区二区高清在线观看的| 亚洲日本天堂| 日少妇亚洲版| 婷婷中文字幕| 亚洲欧综合另类无码一区| yazhououmeizongya| 毛片中心9视频99| 夜夜操青青草| 国产熟女无套内射| 人澡逼| 久久人妻办公室视频| 襙一襙| 99久在线精品99re8| 伊人97超碰| 最新三级网址| 操人人| 91色欧美| 蜜桃臀av一区二区| 青草园大香蕉| 青青草吊丝| 久久99网站| 天天色,天天干,天天干| 免费a v| 91国产丝袜美女| 日韩精品高清资源在线| 婷婷五月天网| 亚洲精品无码少妇久久| av强奸乱轮| 亚欧美色| 欧美大波激情xxxx| 色哟哟 日韩精品| 亚洲高潮影院| 国产自啪精品视频网站黑丝| 好看的91视频| 青青操97| 婷婷色一区| 欧美日韩性爱视屏免费看了| 国产白嫩漂亮KTV在线| 中文字幕在线观| 久久久一区二区三区麻豆| 亚洲自拍欧美色综合| 九九热免费在线国产视频伊人五月| 99热这里只有精品地址| 国产精品极品美女视频| 91快色色色色色| 国产欧美精选激情视频| 少妇一级婬片免费放一级a性色.| 男女一进一出视频久久| 99久久99久久免费精品蜜臀| 乱伦1色页| 2024年最新色情网站在线观看| 欧美性色欧美| 日韩情色一区二区| yw尤物av无码点击进入麻豆| 东北女人无套内谢视频| 探花视频免费观看国产专区| 97在线观看| 91天美| 亚洲无码日韩电影| 97国产超碰| 欧美综合自拍| 麻豆国产视频精品观看| 天天插天天操| 狠狠操狠狠插| 韩国女主播青草福利视频| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 91伊人久| 久久一级无码精品毛片6| 美国一区二区三区视频| 久久高清欧美国产| 97精品综合久久| 色优久久| 性色乱AV一区二区| 欧美后入视频| 亚欧操逼片在线观看 | 91精品婷婷国产综合久久竹菊| 久久久专区| 蜜臀无码一区二区| 91色插| 丝袜美腿亚洲| 久操网视频| 人人插人人搞人人操| 五月综合激情| 99热在线不卡| 99少妇内射| 水多多映视AV| 国产97视频免费观看| 性爱av在线免费观看| 五月丁香六月婷| 日本一区二区三区精品| 亚洲色图第一页| 中文字幕人妻丝袜乱一区三区| 男人午夜天堂| 91|九色|国产熟女| 人妻插插人妻人| 黄色性爱网网| 情侣开房子拍 日韩无码 女的很漂亮| 91美女视频在线| 久久久久人| 欧美亚洲激情| 国产精品久久久三级无码| 综合日本女人伊人| 999精品女人| 久久久久久日韩| 亚洲AV永久无码一区仙野| 久久天天性久久伊人| 男人网站婷婷| 97超碰人人操人人操| 亚洲日韩美国人妻| 美女AV一区二区| 97资源久久| 亚洲无吗在线视频| 欧美狠狠弄| 欧美97免费| 综合伊人激情| 日本人妻一区二区| 97中文字幕一区| 涩综合导航| 婷婷在线视频| 日本在线15p| 国产精品一区二区亚洲人成毛片| 人妻啊啊人妻啊| 国产人妻精品一区二区三区秋霞 | 99999这里都精品| 深夜福利黄片| 天天插天天干| 97这里有精品| 中文字幕黄色片| 风骚少妇视频中文字幕| 亚洲图片日本AⅤ欧美在线| 91在线页| 手机在线播放国产福利| 97精品综合久久网| 黄片无码在线制服| 亭亭在线资源| 久久久久久国产手机AV| 天天色怡春院| 免费一级性爱久久| 午夜天堂精品久久| 久久综合亚洲色1080p| 日本精品国产视频| 影音先锋日本一区二区| 锕锕好爽 死我在线观看| 精品久久无码午夜福利| 蜜桃视频精品一区二区三区| 亲子敌伦对白在线播放| 艳美熟妇先锋一二三区| 色悠久| 啊啊啊啊啊啊啊国| 日韩欧美大片免费高清啪啪| 天天淫人人妻日日色| 欧美天天射| 亚州伊人色综台| 国际精品久久久| 成人性爱电影一区二区| 欧美图片色五月天| 精品91摸| 密乳AV免费观看| 色麻豆AV| 亚洲天堂无码| 96一区二区| 看日韩美女二区三区免费操逼视频 | 国产欧美日韩女同性恋ww喷水精品| 亚洲毛片久久| 亚州成人a∨| 亚洲国产精品V?在线播放| 1区2区3区中文字幕日韩| 亚洲成人精品在线一区| 狠狠色一区二区中文字幕| 亚洲欧美日韩精品久| 俺去啦自拍| 99综合网| 午夜视频黄| 九九九九九九视频| 国产剧情一区在线观看| 国产精品麻豆免费视频| 亚州欧美综合| 夜夜操天| 国产色呦呦| 在线视频资源| 大香网伊人久久综合网eew| 日本性爱不卡视频| 91在线免费精品视频| 日韩欧美丝袜诱惑| 日日夜夜干| 欧美日韩性爱电影在线| 噜噜瑟| 亚洲男人的天堂V| 黄片com.| 日日爱99| 九九超碰综合网| 精品国产乱码久久久久久久久1| 91在线秘 男同| 欧美三级偷拍| 久操操| 亚洲精品三| 在线观看一级α片刺激高潮视频| 麻豆天天躁天天揉揉AV| 蜜臀久久在线视频| 又黄又爽在线观看视频| 女人双腿搬开让男人桶| av一区二区三区四区| 91美女视频。| a片亚洲一本通视频| 成人欧美一区二区三区黑人一| 久久精品国产亚洲妲己影视| 亚洲男人天堂手机版| 热久日综合| 五月丁香成人网| 亚洲欧美自拍偷拍| 13小男生GAY自慰脱裤子| 国产精品动态一区二区三区四四| 久久爽爽精品| 日韩精品人妻系列无码天堂| 五月天伊人| 家庭乱伦性爱av| 中文操逼字幕| 久久久久久综合久久伊人蜜月| 91 丝袜在线观看| 久久久久久久久久久久久久久乱码| 欧美大香蕉专区网| 欧美劲爆视频一区二区| 亚洲成人无码影院| 亚洲高清无码在线桃色| 浪人综合网| 最新国内自拍av免费| 99re在线| 亚州综合图片| 欧美久久久15P| 久久色人体 | 三级AV入口| 日韩啊V| 老司机香蕉久久久久| 伊人久久蜜月| 亚码人妻| 青青欧美| 91网站在线播放| 午夜AV污污污| 97久久综合网| 啊啊啊骚| 欧美AB在线| 九九久久久| 偷拍盗拍亚洲色图图片| 成人小电影网站tex| av橘色网站| 伊人久大| 美女91网| 俄罗斯及免费在线看| 97视频在线| aa片毛片| 国产在线视频二区| 操比国产| 久久久激情| 亚洲 欧美 天天| 99热免费| 国产成人天堂| 激情婷婷丁香网| 一本色道熟妇| 欧美一级A一级a爱片久久| 97久久超碰| 欧美日韩在线视频网站| 亚洲古典另类欧美在线| 超碰99在线观看| 女优免费一区二区永久| 97人亚洲综合字幕| 五月天精品| 人人操人人肉久久精品| 五十路六十路素人熟女| 色乱二区| 天天操狠狠日夜夜干超碰撸com视频在线观看 | AV一起草在线| 婷婷五月天激情网| 国产人伦精品一区二区三区| 亚洲日韩乱码中文无码蜜桃臀网站| 日本久久久精品电影| 欧美92| 精品亚洲一区在线观看| 国产九九九九九九九九| 91人人看| 精品一区二区三区18| 秋霞午夜成人福利片片| 狠狠中文字幕| 91黑丝露脚| 色大香蕉97N| 久久久久久久久9| 91精品国产91久久青草| 一起草精品人妻| 天天看天天综合成人网| 国产91专区| 国产乱伦搜索结果91P| 玖玖爱免费观看视频| 情色日播放AV| 九九九九一区| 免费无码国产精品v片在线观看| 中文字幕亚洲在线一区| 人妻精品一区二区全免费| 偷拍亚洲情色| 狠狠操官网| 亚洲一区深夜| 成人情色综合网| 免费a级毛片av无码久久精品中文字幕| 一起草精品人妻| 成人综合网 欧美| 97久久久网站| 激情五月天丁香社区| 天天天乱色综合全| 加勒比海色香蕉婷婷| 国产1769在线| 亚洲AV在线资源| 婷婷av在线中文字幕| 婷婷五月天av| 亚洲同性aV综合| 日美免费黄片| 熟妇高潮精品一区二区三区下载| 久久的免费性爱视频| 丁香五月影院| 日骚逼视频| 成人国产精品三级A片| 欧美福利视频啊啊啊啊| 爽爽淫人网| 深夜激情| 在线观看日韩av不卡| 91五月天| 二男一女成人A片| 久久精品天美| 日韩精品资源专区二区| 99青草| 97色碰| 日本三级黄页| 国产成人精品网站| av天堂影视中文在字幕在线中文| 鸥美中出| 人妻加勒比东京热| 日韩无码极品| 怡春苑东京热| 操逼片中文| 亚洲色图自拍| 国产伦乱91| 熟妇高潮二区三区| 99热精品在线| 啊啊啊啊啊好多水| 99精品丰满人妻无| 无遮挡男女激烈动态图| 日han少妇无码| 交换娇妻呻吟声不停中文字幕| 禁十八久久| 久久精品毛片免费不卡| 亚洲极品| 天堂九九九九九九九九九| 久操视频在线观看| 尤物网址| 校园春色家庭伦理欧美激情| 亚洲AV无码成人精品久久| 茄子社区国产精品| 99性爱视频| 热99这里有精品综合久久 | 最新加勒比丝袜在线| 国产精品 视频| 蜜臀久久久国产| 无码黑人精品一区二区三区三| 天天超级碰碰碰| 亚洲Av无码成人精品国产| 人妻熟女一区二区三区视频| av优播| 色在线亚洲视频www| 操逼短片| 91 丝袜在线| 天天爱天天操| 久操视频这里只有精品| 国产激情视频一区区三区| 精品国产精品一区二区| 一区二区影视| 久久亚州高清| 欧美综合区| 久久9久| 蜜臀99999| 天天做日日爱夜夜爽| 超碰人妻久久| 男人天堂综合| 国产成人在线观看综合| 日韩性爱小视频| 色网综合网| 欧美另类色图片| 久久黄色视频一区二区三区 | 国产精品乱人伊人网| 强奸乱伦AV一天堂网| 欧美天天在线| 英伦大奶子熟妇吊带| 99热在线观看| 久热精品在线国产| 国产免费内射视频| 黑人粗大V S日韩女优视频| 97资源超碰| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 操狠狠| 日韩激情小说一区二区| 亚洲超碰97| 精品无码一区二区人妻久久蜜桃 | 伊人激情五月天一区二区| 人人做人人妻人人夜视频| 亚洲综合在线视频| 久热网| 黄色免费网页无码| 青青色综合| 三级片网站在线播放| 九九精品99| 欧美性xxxxx狂欢| 日韩精品人妻中文字幕不卡乱码| 欧美一区二区三区黄色影视| 国产夫妻一区二区| 久久99黄色卞西瓜| 丁香五月性| 色成人Www精品永久观看| 久草精品国产99| 成人小电影网站tex| 天天日骚逼熟女| 欧美亚洲厕所精品偷拍91 | 国产在线视视频有精品| 日韩Va亚洲va欧美Ⅴa久久| 人人么人人操| 激情综合网激情综合| 日韩91网站| 精人妻一区二区三区| 人人九九精| 亚洲午夜蜜臀| 五月天精品| 97视频新免费| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 久久久久久久人妻| 亚洲欧洲偷拍一区| 亚洲自拍偷拍视频在线 | 亚洲欧美日韩中文久久自慰| 嗯嗯啊啊好大好爽| 国产精品国产| 日韩欧美三级| 久久东京热久久| 亚洲超碰97| 亚洲第一页第二页激情| 91搞逼视频| 国产高清精品一区二区三区毛片 | 亚洲AO在线| 狠狠操官网| 9ⅰ久久久天天| 99性爱| 999精品国产高清一区二区| 亚洲有码第一页| 国产精品秘 福利姬在线观看| 久久久96| 91色人| 另类综合另类| 人人摸人人添人人操| 欧美亚洲首页| 欧美大片一区二区三区| 老女人爆菊| 日本精品无码三级网站| 亚洲国产精品无石码久久| 97色视频在线| 美日韩成人| 老司机深夜18禁污污网站| 超碰在线在公开超碰在线在公开| 天天色悠悠激情| 操逼操网| 国产操逼视频在线观看| 97日亚洲欧美| 欧美体内射精| 男人天堂日日夜夜| 亚洲色图91欧美日韩| 蜜桃视频成a人v在线| 久久久久久精| 肥佬影院91| 自拍亚洲综合| 九X超碰| 东京日日夜夜| 亚洲精品亚洲人成人网| 上海一级黄片| 午夜亚洲WWW湿好大| 日韩有码中文字幕女同性恋 | 久久久国产av美女私房| 欧美天天综合网| 人妻人久久精品中文字幕| 中文字幕乱码人妻一区二区三区,99精品| 九九黄色视频在线观看| 欧美日韩国产高清在线一二三区| 欧洲黄色网| 欧美中文综合| 九九热精品| 2020天天色综合| 91精品又粗又猛又爽| www.高清无码诱惑一区.com | 成人性爱电影一区二区| 亚洲AV操| 国产精品久久久久久久毛片1| 欧美性生活男人的天堂| 欧美片第一页| 午夜男女爽爽大片免费观看| 日韩肏逼视频| 人妻9117c| 91在线视频国产网站| 日本一二区不卡| 美女黄页网站| 熟女少妇视频| 欧美91变态| 人妻丝袜一区二区三区在线| 亚洲有码视频二区| 国产精品96久久久久久| 久久69| 看全色黄大色大片免费视频| 久久大黄片| 2020久久免费视频| 欧美人人曰人人操人人射射| 亚洲性爱免费电影| 亚洲人妻中文高清| 亚洲成?V人片在线观看福利| 91久久久久久| 欧美亚洲国内自拍| 亚洲男人天堂2012| 60秒免费小视频| 精彩久久中文| 欧成人精品一区二区三区| 91少妇人妻| 国产91影院| 天天夜躁日日躁狠狠2002| 操日韩第| 九九无码视频| 天天综合AV| 久草毛片电影怡| 九七毛片九九毛片| 久久久日本电影| 日本伦乱九九九综合| 久久精品国产99精品亚洲蜜...| www.av在线视频| 国产18精品亚洲精品| 91九色精品熟女内射| 一区超碰一区| 久久人人看| 日韩久射综合| 嗯啊啊啊轻点视频| 日日操免费视频| 天天舔九色婷婷| 在线播放免费av福利片| 中文字幕人乱码中文字的预防方法 | 神马久久久久久伦理片| 在线小视频| 国产亚洲禁久一区二区| 欧美激情在线观看视频| 少妇免费视频| 日本性爱欧美性爱| 97视频在线观看网站| 日本黄 R色 成 人网站| 亚洲色图欧洲| 亚洲免费97免费| 久久久久国产精品喷潮免费观看臀 | 91天美传媒在线观看| 精品一区二区成人| 91麻豆天美国产欧美高潮| 亚洲丁香花色| 天天懆天天日| 久久97视频| 日韩国产品视频中文字| 新久久AV| 四虎影视欧美| 91成人在线| 国产大学生高潮在线播放| 婷婷午夜清品久久久久久久性色视频观| 日韩无码嘿咻黑热久| 亚洲色图欧美色图制服丝袜| 久草在| 亚洲欧洲成人在线电影| 五月天婷婷激情| 国产精品久久久久久久久久二区三区| 日本乱人伦片中文三区| 日本超碰在线国产一区| 欧美在线第五页| 狠日操| 蜜臀久久一区二区| 欧美夜夜草视频| 久久精品国产97欧美精品亚洲 | 18精品一区| 亚洲av淫乱| 亚洲最新Av| 99视频只有精品| 免费久久一级毛片大黄| 加勒比99999| 亚洲色图美腿丝袜| 日韩人妻丝袜中文字幕| 国产麻豆福利av在线播放| 久久久av爱| 日韩 国产 欧美自拍| 天天摸天天插天天日| 青娱乐91| 久久免费中文字幕在线观看| 91肉片| 亚欧美天堂在线| 欧美片第一页| 精品十三区| 国产美女销魂在线观看不卡| 天天综合网1| 97亚洲在线| 欧美亚洲AN| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 日本二区不卡| 伦理日韩国产久久| 国产中文福利| 欧洲Au麻豆| 91欧美高清| 99激情视频| 亚洲欧洲综合视频在线| 操逼视频亚洲| 亚洲1区2区三区高清中文字幕| 成人性爱免费播放| 女沟厕偷窥piss小便| 大香蕉伊人75| 欧美激情 亚洲色图| 人人九九精| 久热99999| 亚洲无吗在线视频| 熟妇人妻一区二区三在线| AV免费在线播放一区| 五月天日日操夜夜操| 玖玖视频在线资源一区二区三区| 久久久久精| 在线αⅴ| 天堂精品一区| 天天摸天天插天天日| 操操逼视频| 久草成人影片| 超碰资源亚洲97| 精品国产一区二区三区四区在线看| 91男人天堂网| 一本一道人妻久久一区二区三区 | 99re视频在线播放青草| 亚洲s在线观看| 日韩一级特黄av毛片| 天堂性色| 日本新免费二区三区| 五月天激情视频| 五月天久久综合网| 99热婷婷一区二区三| 屌妞视频久久久久久久久久久久| 欧美性爱免费短视频| 欧美探花网| 成人八戒网站| 五月天婷婷基地| 人妻少妇蜜桃视频欧美一区| 尤物av网站| 性生活无遮挡纯毛片在线看| 麻豆黄站| 九九草| 成人午夜高潮av猛片| 岛国免费黄色网址| 久久性爱大全| 91neishe| 日日嗨AV一区二区夜夜| 亚春色色| 日本色色色网站免费看不卡| 久久久久久日韩| 亚洲欧洲日韩国产自在线| 大香蕉九九| 麻豆AV一区二区| 后入福利视频| 国内外内射高清视频| 家庭乱伦国产| 欧美激情综合| 99国产精品久久久久久久成人热| 国产AB视频| 精品九九九九| 人人摸人人干人人拍97| 91色艳| 久草精品一区| 蜜臀99久久精品久久久久| 国产女人高潮嗷嗷嗷叫小说| 噜噜噜狠狠色综合| 超碰中文字幕人妻草一区| 色噜噜日韩精品| 免费日韩黄片| 天天综合-91入口| 人人妻人射| 欧美性特| 色香91| 欧美精品二区视频在线| 日韩欧美经典在线观看| 中文字日本乱码| 91色夜| 操高情无码| 天天看片天天爽| 亚洲在线观看| 亚洲一区二区三区不卡国产欧美| 99热9| 婷婷色导航| 亚洲成人免费中文字幕| 国产精品美女在线一区| 中文一区在线视频| 爽 好舒服 无码刺激久久| 丁香九月激情啪| 五月天丁香网| 看日韩美女二区三区免费操逼视频| 五月丁香六月激情| 熟女日韩| 精品人妻一区二区乱码一区二区| 日韩精品电影| 日本一卡二区在线| 少妇色| 欧美偷拍区| 中文字幕成人理论在线| 97五月天| 丝袜喷水在线| 东京热大香焦| 久久久91| 丁香九月 婷婷| 操逼逼无码| 伊人成人中文字幕久久网| 超碰国产情侣自拍网| 日日夜夜青青草母狗| 国产诱惑| 777超碰| 中文色综合| 色一色综合网| 久久综合日韩亚洲欧美| 日本中文字幕一区| 欧美性夜| 2019久久久久久久久福利| 国模少妇一区二区三区| 欧美v日韩欧亚洲电影天堂色诱,国产传媒| 97色论| yazhououmeizongya| 大香蕉一级黄色片久久| 国产精品蜜乳AV| 欧美日不卡| 亚洲污污网站| 黑人综合网| 人人操人人操草草| 免费A片三p视频| 国产尤物AV尤物在线观看不卡| 爽爽淫人网| 91 亚洲情侣偷拍 久久| 超碰九7| 亚洲码专区| 久久av网| 天天综合中文字幕 91| 欧美操逼熟女| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 婷婷激情综合网| 最新av在线| 欧美亚洲激情| 中文字幕亚洲在线一区| 91久久堂| 99久久久无码国产精品性啊聊| 亚洲无码久久久久久久| 激情文学欧美| 欧美综合另类| 在线性黄高清免费视频| 综合天天网| 久久久性| 裸体美女免费看网站青草| 天天在线91| 欧美性爱第一区| 亚洲另类久操网| 日天天九九天堂666| 91成人久久 | 欧美人妻少妇| 五月丁香婷婷综合| 91碰碰| 国产一区二区精品久久99| 日本少妇va7777| 中文字幕乱亚洲美女精品一区| 一区二区三区精品视频| 欧美最大综合网| 26uuu性| 级品肉射| 人人操肉肉| 噜噜噜久久亚洲精品色情| 国产女大学生AV| 狠狠 91| 91五十路| 青青11操操操操操操操操| 亚洲中文字幕一区二区| www.色操逼| 97在线亚洲| 欧美性巨大╳╳╳╳╳高跟鞋| 性色av一区二区| 亚洲图片日本AⅤ欧美在线| 成人五月香网在线| 白嫩少妇| 天天弄欧美| se吧提供91精品国产91久久久久久| 97久久资源| 亚洲性网| 久艹伊人精品综合在线| 秋霞操逼片| 97亚洲资源| 国产日韩欧美操逼视频| juliaann丝袜大战黑鬼| 黄色AAAAA欧美| 在线观看午夜婷婷久久久久清性观看| 精品一区二区综合熟妇| 丝袜色综合| 在线国产探花| 超碰美国| 狠插 制服 自拍| 国产日韩区| 少妇精品久久久八区九区| 偷窥自拍亚洲天堂网爆| 亚洲Av诱惑| 不卡人妻少妇精品毛片一区23区视频 | 操逼啊啊啊91| 一本色道久久综合狠狠操| 色婷婷基地| 大香蕉78| 一区二区视频你懂的| 亚洲国产一级精品毛一级精品看免费视频| 超碰社区97| 志村玲子视频一区二区| 成人性爱免费播放| 精品人妻一二三四区视频| 大香蕉五月天| 91在线视频国产网站| 1204av韩国| 日本三级R| 欧美激情激情xxxx欧美专区| 亚州中文字幕超碰97| www.色婷婷色综合| 久草精品国产99| 爱妻综合网| 天无日色综合| 成年人黄色小视频网站| 久久九九97| 久久国99999| 丁香五月婷婷啪啪| 午夜a成v人电影| 国产三级中文字幕粉嫩| 亚洲欧美综合色| 亚洲图片偷拍视频区| 免费精品国偷自产在线在线 | 久久精品国产亚洲妲己影视| 少妇激情AV| 青青草原狼av| 国产乱伦性爱AV| 亚洲一区二区三区春色| 四虎影视国产精品| 国产精品 午夜福利| 亚洲日本韩国在线| 亚欧免费| 亚洲情色综合| www.人人摸在线视频| 亚洲精品天天影视综合网 | 亚洲精品成人激情在线| 国模无码人体一区二区三| 久久久久女教师免费一区 | 久久久精品91八戒| 久久精品国产亚洲av水密被窝| 日日噜噜夜夜久久亚洲一区二区| 精品区9| av凤凰久久久| 人人摸.人人色| 国产成年女黄特黄| 91n处女在线观看| 欧美第一页| 美性中文综合网| 色噜噜人妻av 中文字幕| 五月天色色网站| 久草网站免费在线观看| 亚瑟国产精品久久无码| 久久精品人妻一区| 亚洲欧美碰碰| 我爱操| 熟女熟妇一区二区三区视频| 乱久久久| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 天天懆天天日| 精品一级毛片在线观看| 狠日欧美| 78操B| 78精品| 欧美国产婷婷久久| 久久大香蕉97| 日本一线产区和二线产区伦理片| 激情文学小说一区二区| 亚洲色图第一页| 91强在线播放| 久久高清无码夜夜操| 美女诱惑在线一区| 新97国产超碰| oumeizonghese,www| 国产AV人人 夜夜人人澡| 97干色天堂| 天天做天天爱天天爽AV| 久久久久久久78| 黄色十八禁网站| 97er欧美性| 激情综合网一盗摄| 91网站在线播放| 热热色青青草| 97超碰精品图片| 欧美97在线欧| 一区在线精品中文字幕| 亚洲97成人在线观看| 日本三级A片网站com| 2018天天干在线视频| 日韩丰满熟妇| 婷婷AV一区二区三区| 丁香婷婷色五月| 亚洲少妇色| 欧美综合第一| 丝袜狂射91| 九久久九九久视频| 日本不卡二区| 热无码中文亚洲H一道本一区二区| 日韩无码操逼片| 成人美女av| 丁香六月激情综合| 不卡码视频| 亚洲鸥美色图| 97超碰大| 家庭乱伦国产精品| 国产三级多多影院2022国产AA一级毛片无码 | 自拍偷拍2025在线观看| 五月天婷婷成人网| 国产精品熟女AV中文字幕在线播放| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 97超碰色色| 国产精品爱欲| 欧美精品久久久久久久久88| 99国产人成精品| 日韩av色图综合| 久久青娱乐| 亚洲国产精品无码AV久久久| 极品美女福利在线观看| 大香蕉97久久| 四虎影视欧美| 风骚少妇视频中文字幕| 男人的天堂啪啪啪啪啪蜜桃不卡| 欧美一二三级精品在线| 明星性猛交ⅹxxx乱大交| 密乳无码| 久热超碰| 好好的日:com久久九九| 另类图片五月天| 国产久久久久久| 日韩亚洲中文字幕在线| 精品久久久久,69国产成人精| 男人天堂日日夜夜| 国产97av| 26uuu偷拍亚洲欧洲综合| 激情开心五月天| 中出789在线视频| 青春草A| 国产在线激情| 五月丁香六月婷| 欧美亚洲丝袜美女电影| 北条麻妃性愛视频| 天天综合网~91| 中文字幕123| 亚洲精品天天影视综合网 | 黄色成品网站| 国产精品久久久| 五月久久HDAV| 俺也射| 久久99草| 亚洲综合网电影91| 人人操人人爽人人操人人| 国产精品久久久视频| 国产后入| 精品人妻一区二区三区视频| 日韩欧美女求操每天更新| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 中文字幕精品免费一区二区| 性做久久久久久免费观看软件| 99青青草国产视频| 伊人国产成人av网站| 成人欧美一区二区三区黑人一| 男人的天堂无码| 天天艹天天日| 久久深夜无码| 91AV入口| 密臀在线免费观看| 69一区二区三区| 五月天婷婷激情| 亚洲人妻色图| 色婷婷基地| 天美传媒麻豆一区二区三区国产精| xxx0国产在线播放| 亚洲资源网| 亚洲一级性爱视频免费看| 动漫片子网站3黄| 国产二区三区免费视频| 99999久久久久9国产精品| 搡老女人老91二区| 日本超碰在线国产一区| 99热这里只有精品18| 久久久久免费少妇| 亚洲天天操| 97久精品| 香伊人在线| 欲香欲色天天天综合和网| 中文字幕AV乱伦| 淫乱图区| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 大香蕉av在线| 亚洲精品欧洲色| 超91综合网| 天天看片天天爽| 免费人成在线观看网站品爱网| 亚洲 在线| 欧美另类自拍| 性暴力欧美猛交在线直播| 最新一二三区视频| 久久欲| 亚洲色图 图片| 草莓精品视频| 亚洲a色| 嗯嗯啊啊操死我| 男女激烈网站最新| 亚洲麻豆18发?| 99爱精品| 日韩欧美福利视频看看| 亚洲色香| 日韩性爱小视频在线观看| 亚洲欧美碰碰| 天天综合网在线| 色yeye成人免费视频| 人妻第一页| 亚欧中文字幕在线视频| 奇米狠999| 久草新在线| 91黑丝美女| av资源在线播放天堂| 加勒比综合a∨| 日韩激情无码影院| 中文字幕久热视频在线| 亚洲玖玖爱| 欧美熟爽综合| 青娱乐亚洲自拍| 日韩情色一区二区| 日日夜夜青青草母狗| 九九色逼| 一个人免费视频观看在线WWW | 午夜欧美神马久久久久| 加勒比综合a∨| 久久国产99精品72福利| 尤物av网站免费在线播放| 丁香五月激情婷婷| 一本精品日本在线视频精品| 日韩免费中文字幕视频| 亚洲天堂一区| 色图四区| 综合五月天| 欧美综合天堂| 久九九九九九九九热| 99精品无码| 亚欧美色图| 久久华人网| 欧美,亚洲,日韩,v,天堂,手机在线观看| 午夜精品久久久久| 熟女自慰久久久| 啊啊啊啊在线观看网址| 91新在线欧美| 婷婷色香| 激情亚洲天堂| 性性欧美| 婷婷15月天青娱乐| 国产性爱欧美性爱在线| 亚洲色图 图片| 蜜乳av一区二区三区四区不卡| 国产精彩女在线观看视频| 久草线上视频免费看| av草草在线电影| 色噜噜人妻av中文字幕| 91制服丝袜| 精品999一区二区| 97在线看| 欧美呦呦性爱| 久操网无码在线| 国产激情在线| 4399成人黄A片| 亚洲少妇色| 蜜臀亚洲中文| 老司机免费视频在线91| 精品美女人人干| 97在线观看视频| 欧美美女视频| 久久草草亚洲蜜桃臀| 三级特黄60分钟播放| 老司机射| 亚洲综合在线视频| 在现视频女上位好爽| 青青操少妇| 无码九九| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 岛国网址国产| 91丨熟女丨丰满熟女| 婷婷五月丁香五月| 国产欧美一区二区| 超碰中文字幕人妻草一区| 欧美一二级| 夜夜躁狠狠躁日日躁av| 最近2018中文字幕在线高清第一页| 涩涩这里只有精品视频| 极品白嫩美女白浆成人福利在线看| 久操大香蕉手机视频在线看| 国产人伦精品一区二区三区| 加勒比海成人视频网 | 久久综合av| 72av视频| 日本一区视频在线观看| 激情四射五月天| 91艹逼精品| 天天干人人干天天日97|