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

ARTICLE DETAIL

資訊詳情

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

大數(shù)據(jù)畢設實戰(zhàn):Hadoop+PySpark+Scrapy酒店推薦系統(tǒng)全解析

大數(shù)據(jù)畢設實戰(zhàn):Hadoop+PySpark+Scrapy酒店推薦系統(tǒng)全解析 又到了一年一度的畢業(yè)設計季節(jié)每年這個時候我都能在后臺收到大量私信大數(shù)據(jù)方向的畢設到底做什么怎么做才能既有技術深度又能順利通過答辯說實話我接觸過很多做所謂“推薦系統(tǒng)”的同學一大半都是下載一個公開數(shù)據(jù)集跑一個現(xiàn)成的協(xié)同過濾代碼再套個前端頁面就交差了。數(shù)據(jù)本身不是自己獲取的整個處理鏈路也走不通答辯的時候一問就露餡。這篇文章我就以自己實際帶過的一個項目為例完整拆解一套真正“拿得出手”的大數(shù)據(jù)畢設——基于Hadoop、PySpark、Scrapy的酒店推薦系統(tǒng)同時包含酒店知識圖譜構建、數(shù)據(jù)分析可視化和完整的Web交互。這套項目從零開始覆蓋了數(shù)據(jù)采集、存儲、計算、算法、可視化全鏈路也是我在實際環(huán)境中反復調(diào)試跑通的方案每一部分我都會講清楚設計思路和踩坑記錄希望能給正在選題或已經(jīng)入坑的同學一個直接能參考的模板。從選題思路到系統(tǒng)落地這套酒店推薦系統(tǒng)到底做了什么1.1 一套完整的“數(shù)據(jù)閉環(huán)”是什么樣的很多同學對大數(shù)據(jù)的理解停留在“用了Hadoop、Spark就算大數(shù)據(jù)”這是最大的誤區(qū)。真正的難點在于把數(shù)據(jù)鏈路的每一個環(huán)節(jié)串起來形成一個能夠自洽運轉的閉環(huán)。這套酒店推薦系統(tǒng)的核心鏈路是Scrapy爬蟲抓取真實的酒店數(shù)據(jù) - 清洗后存入HDFS - PySpark做離線分析和特征計算 - 協(xié)同過濾算法生成個性化推薦 - 同時抽取實體關系構建知識圖譜 - 最后在Web端完成推薦展示、圖譜交互和可視化大屏。這樣的設計有幾個非常實際的好處。首先是數(shù)據(jù)來源真實可靠評審老師問“你的數(shù)據(jù)哪來的”你理直氣壯回答“自己爬的”這就已經(jīng)比一票用公開數(shù)據(jù)集的同學站得住腳。其次是技術棧覆蓋全面從爬蟲、大數(shù)據(jù)存儲計算到機器學習算法、前端可視化每一層都有可講的東西完全能撐起一篇畢業(yè)設計的深度。1.2 為什么選這四件套Hadoop、PySpark、Scrapy、知識圖譜選型這件事不只是“聽說這幾個技術很火”而是要根據(jù)項目需求來。我做這套設計的時候選型邏輯是這樣考慮的Hadoop擔任的是底層存儲和基礎計算的角色。HDFS天然適合存儲海量非結構化或半結構化的酒店數(shù)據(jù)比如評論文本、用戶日志、爬取抓包返回的JSON而MapReduce雖然現(xiàn)在用得少了但作為離線批處理的底層思想寫進論文里能體現(xiàn)你對分布式計算原理的理解。PySpark更像是把這些數(shù)據(jù)“盤活”的關鍵。用Spark做數(shù)據(jù)清洗和特征計算比單純寫MapReduce效率高太多而且Python接口對做畢設的同學極其友好。你在PySpark里寫DataFrame操作感覺和pandas很像但底層是分布式執(zhí)行這個“既熟悉又高級”的體驗非常適合畢設場景。Scrapy是這套系統(tǒng)的數(shù)據(jù)入口。作為Python生態(tài)里最成熟的爬蟲框架它的并發(fā)調(diào)度、中間件機制和Pipeline數(shù)據(jù)流設計可以非常優(yōu)雅地支撐多頁面、多字段的酒店數(shù)據(jù)采集。知識圖譜是用來“拔高”的部分。單純做推薦系統(tǒng)在畢業(yè)設計里已經(jīng)不算新鮮了但如果你把酒店、城市、品牌、設施、用戶偏好這些信息抽成實體和關系用圖數(shù)據(jù)庫Neo4j存儲再在前端畫出一張可交互的知識圖譜整個項目的技術亮點立刻不一樣了。這也是答辯時最容易引起老師興趣的模塊。1.3 畢設交付物包含哪些東西一個完整的畢設項目代碼只是其中之一。這套項目正常交付時包含了全套源碼、畢業(yè)論文LW文檔、答辯PPT和一份詳細的視頻講解。論文里我重點寫了三章推薦算法設計與實現(xiàn)、知識圖譜構建、大數(shù)據(jù)平臺部署PPT則把系統(tǒng)架構和核心截圖作為亮點展示詳細講解則是錄制的系統(tǒng)演示覆蓋了從爬蟲啟動到知識圖譜交互的每個操作步驟。交付物完整的好處是無論導師從哪個維度驗收你都有內(nèi)容可講。數(shù)據(jù)從哪來Scrapy爬蟲系統(tǒng)設計細節(jié)2.1 目標站點分析與爬蟲策略酒店數(shù)據(jù)去哪爬我當時選型的標準有三條一是數(shù)據(jù)維度豐富至少包含酒店名稱、地址、價格、評分、評論數(shù)和經(jīng)緯度二是頁面結構相對規(guī)整便于批量解析三是數(shù)據(jù)量需求在幾千條以上才有分析價值。國內(nèi)主流的在線旅游平臺基本都符合條件但不同平臺的頁面結構差異很大有的需要處理動態(tài)加載有的則藏在iframe里還有的需要登錄才能看完整信息。這里要特別提醒一點爬蟲不是寫一次就完了更不是運行起來就一勞永逸。目標網(wǎng)站的前端結構經(jīng)常改版包括標簽屬性變化、接口參數(shù)加密、反爬策略升級等這些東西都會直接導致爬蟲失效。因此設計階段就要把“易維護性”考慮進去字段解析和頁面下載邏輯盡量解耦這樣某一部分掛了修復成本會小很多。2.2 Scrapy的核心架構與代碼實現(xiàn)Scrapy的工作流程可以簡單理解為Spider發(fā)請求拿到響應通過Selector或Selenium解析出結構化字段打包成Item交給Pipeline做清洗和存儲而下載中間件和爬蟲中間件就像關卡一樣夾在中間分別負責請求的預處理和后處理。我舉一個Spider的核心代碼片段這是抓取酒店列表頁的最小實現(xiàn)import scrapy from hotel_spider.items import HotelItem class HotelListSpider(scrapy.Spider): name hotel_list start_urls [https://example.travel.com/hotels/city/beijing] def parse(self, response): # 定位酒店條目區(qū)域每個酒店一個card節(jié)點 hotel_cards response.css(div.hotel-card) for card in hotel_cards: item HotelItem() item[name] card.css(h3.hotel-name::text).get() item[price] card.css(span.price-num::text).get() item[score] card.css(span.score::text).get() item[comment_num] card.css(span.comment-num::text).get() yield item # 下一頁鏈接用yield繼續(xù)交給調(diào)度器 next_page response.css(a.next::attr(href)).get() if next_page: yield response.follow(next_page, callbackself.parse)這里有個容易被忽略的細節(jié)Item在不同版本中的用法略有差異。早期的Scrapy版本直接在Item里定義Field新版中你還可以用attrs庫定義dataclass風格的Item類。兩種寫法都能運行但為了論文寫起來更清楚我推薦使用dataclass風格因為字段類型一目了然from dataclasses import dataclass dataclass class HotelItem: name: str city: str address: str price: float score: float comment_num: int lat: float lng: float2.3 動態(tài)內(nèi)容與iframe頁面怎么處理很多旅游平臺為了增加爬取難度詳情數(shù)據(jù)都放到了動態(tài)請求里而列表頁本身只是個殼。有些甚至把關鍵信息放在iframe里直接在Spider里用response.css根本取不到東西。這時候常規(guī)方案是引入Playwright或Selenium來渲染頁面再把渲染完成的HTML交給Scrapy解析。scrapy-playwright是目前最順手的方案它把Playwright的能力以中間件的形式整合進Scrapy生態(tài)使用起來非常自然。在settings.py里做以下配置DOWNLOAD_HANDLERS { http: scrapy_playwright.handler.ScrapyPlaywrightDownloadHandler, https: scrapy_playwright.handler.ScrapyPlaywrightDownloadHandler, } PLAYWRIGHT_LAUNCH_OPTIONS { headless: True, }然后在Spider中這樣請求yield scrapy.Request( urldetail_url, callbackself.parse_detail, meta{playwright: True} )這樣Scrapy就會用無頭瀏覽器加載頁面。遇到iframe嵌套內(nèi)容時ProcessRequest可以在meta中增加playwright_page操作先用page.frame_locator定位到對應的frame再取內(nèi)容。這個方案比裸用Selenium穩(wěn)定得多內(nèi)存控制也好很多。2.4 反爬應對與請求調(diào)度的平衡術說句實在話爬蟲最大的坑不是解析頁面而是反爬。目標站點常見的反爬措施包括IP頻率限制、User-Agent檢測、Cookie校驗、驗證碼、JS加密參數(shù)等。畢設場景下不建議做那種對抗性極強的破解一方面法律和技術倫理上有風險另一方面也沒有必要——我們需要的只是幾千條能說明問題的數(shù)據(jù)控制頻率、偽裝請求頭就足夠。我在這個項目中的策略是用下載中間件維護一個UA池并疊加一個簡單的IP代理池class RandomUserAgentMiddleware: def process_request(self, request, spider): ua random.choice(spider.settings.get(USER_AGENT_LIST)) request.headers[User-Agent] ua return None class ProxyMiddleware: def process_request(self, request, spider): proxy random.choice(spider.settings.get(PROXY_POOL)) request.meta[proxy] proxy return None除此之外最重要的是控制并發(fā)。Scrapy默認的并發(fā)是16但爬酒店這類站點我建議調(diào)到4到6下載延遲設置在1到2秒。這個節(jié)奏跑起來既不會觸發(fā)封禁數(shù)據(jù)采集速度也不算慢。實際跑下來采集2000家酒店的詳情加評論大概是兩三個小時的事完全夠用。2.5 清洗規(guī)則與字段落地數(shù)據(jù)爬到之后不能直接進HDFS一定要做清洗。我在Pipeline里做了三件核心的事一是字段校正。價格、評分這種字段從HTML里取出來是帶、分這類符號的字符串必須統(tǒng)一格式化成float字符串里混有的空格、換行要strip掉經(jīng)緯度如果缺失要根據(jù)酒店地址用離線地理編碼補一次。二是去重。很多平臺列表頁會重復公示同一家酒店我在Pipeline里維護了一個seen集合以“酒店名城市地址”作為唯一鍵去重。這種方式比單個字段去重可靠得多。三是空值策略。核心字段如名稱、城市如果為空直接丟棄該條記錄而評論數(shù)為空時我可以填0因為后面做推薦時會用評分算權重評論數(shù)為0的代表冷門酒店本身也有分析價值。清洗完之后我按日期分區(qū)寫JSON格式落盤到HDFS目錄 /data/hotel/raw/20250301/ 下面方便后續(xù)Spark直接讀取和溯源。離線計算的基座Hadoop平臺搭建與PySpark數(shù)據(jù)處理3.1 Hadoop集群怎么搭最省心很多同學一提到搭建Hadoop就頭皮發(fā)麻其實畢設場景根本沒必要搭真實的分布式集群一臺機器跑偽分布式模式就完全夠了。所謂偽分布式就是在單機上同時運行NameNode、DataNode、ResourceManager和NodeManager等進程邏輯上和分布式一樣只是所有進程都在一臺機器里而已。畢設的側重點是讓你把原理講清楚流程跑通偽分布式完全能達到這個目標而且省去了多臺機器聯(lián)調(diào)的痛苦。我實際使用的環(huán)境是一臺8核16G內(nèi)存的服務器CentOS 7系統(tǒng)裝了Hadoop 3.3.x版本、Spark 3.3.x版本和對應的PySpark。啟動前需要配置core-site.xml、hdfs-site.xml和yarn-site.xml這三個文件。core-site.xml里指定NameNode地址hdfs-site.xml里設置副本數(shù)為1yarn-site.xml配置ResourceManager地址。這里有一個新手必踩的坑很多教程會告訴你啟動前先格式化NameNode步驟是bin/hdfs namenode -format但如果你操作不當、多次執(zhí)行格式化會導致NameNode的clusterID和DataNode不一致結果數(shù)據(jù)節(jié)點死活起不來。我當年在這個問題上卡了一個下午。解決辦法也不難先停掉所有進程把tmp目錄下的dfs數(shù)據(jù)徹底刪掉再重新格式化和啟動。順序一定是清空數(shù)據(jù)目錄 - 格式化 - start-dfs.sh - start-yarn.sh。3.2 PySpark從HDFS讀取數(shù)據(jù)做特征工程Hadoop啟動之后HDFS就是整個系統(tǒng)的數(shù)據(jù)中樞。爬蟲清洗好的數(shù)據(jù)寫入HDFSPySpark再通過hdfs://協(xié)議的路徑讀取。這樣做的好處是存儲和計算分離符合大數(shù)據(jù)的經(jīng)典范式論文里寫出來也更專業(yè)。PySpark讀JSON并做基礎清洗的代碼大致是from pyspark.sql import SparkSession from pyspark.sql.functions import col, when, isnan spark SparkSession.builder \ .appName(hotel_etl) \ .getOrCreate() df spark.read.json(/data/hotel/raw/20250301/*.json) df df.dropDuplicates([name, city, address]) df df.filter(col(name).isNotNull() (col(price) 0)) df df.withColumn( price_band, when(col(price) 300, 經(jīng)濟型) .when(col(price) 600, 舒適型) .when(col(price) 1000, 高檔型) .otherwise(豪華型) )這里需要多說一嘴Spark的惰性求值機制。你在代碼里寫withColumn、filter這些操作時Spark并沒有真正執(zhí)行只有當遇到action操作比如.count()、.write時才會真正觸發(fā)計算。理解這個機制很重要因為很多同學在寫大數(shù)據(jù)代碼的時候用pandas的思維逐行執(zhí)行結果日志看不懂、性能也上不去。之后我把處理好的數(shù)據(jù)寫回HDFS的清洗目錄同時把用戶評論數(shù)據(jù)單獨抽出來為下一步的推薦算法和知識圖譜構建做準備。3.3 用戶評分矩陣怎么造推薦算法最經(jīng)典的數(shù)據(jù)格式是“用戶-物品-評分”三元組。但我爬到的數(shù)據(jù)并沒有真實用戶的下單評分因為那屬于平臺的核心數(shù)據(jù)我根本拿不到。這時候就要回到畢設的本質造數(shù)。我采用了“模擬用戶行為”的方式為推薦算法生成輸入數(shù)據(jù)先爬取幾千條真實酒店數(shù)據(jù)包括評分、價格、評論數(shù)、地理位置、設施標簽等然后根據(jù)這些內(nèi)容物構造500個虛擬用戶再按照用戶的偏好類型給不同的酒店打分。比如模擬“預算敏感型”用戶對經(jīng)濟型酒店打高分模擬“舒適優(yōu)先型”用戶對高檔型酒店打高分評分范圍1到5分。這樣生成的評分矩陣雖然不是用戶真實行為但具有明顯的群體偏好差異跑推薦算法能出非常清晰的效果而且我在論文里會把數(shù)據(jù)構造方法完整說明不構成學術造假。3.4 PySpark在Windows和Linux下的版本兼容坑這幾年很多同學的開發(fā)機是Windows這也是個大坑。PySpark在Windows下最常遇到的報錯是Failed to locate the winutils binary in the Hadoop binaries這是因為Spark在Windows環(huán)境下需要winutils.exe和hadoop.dll來模擬Linux的Hadoop環(huán)境。你必須下載對應Hadoop版本的winutils放到一個目錄然后配置HADOOP_HOME環(huán)境變量指向它。另外注意PySpark、Spark和Java版本之間必須匹配比如Spark 3.3.x要求Java 8或11Python 3.8以上版本不匹配會在啟動時就拋出各類奇怪異常。我比較推薦的做法是本地Windows只做代碼編寫和小規(guī)模邏輯驗證真正跑全量數(shù)據(jù)時把代碼放到Linux服務器上執(zhí)行既免去了winutils的折騰運行速度也快得多。推薦系統(tǒng)核心協(xié)同過濾算法實現(xiàn)與調(diào)優(yōu)4.1 為什么選協(xié)同過濾而不是深度學習現(xiàn)在一提起推薦系統(tǒng)很多人的第一反應是深度學習。但畢設場景需要理性評估深度推薦模型如DeepFM、DIN需要大量樣本和特征工程訓練時間長、解釋性差答辯時老師問起來你很難在十分鐘內(nèi)講明白。而協(xié)同過濾作為推薦系統(tǒng)最經(jīng)典的算法原理清晰、實現(xiàn)成本低、效果可解釋非常適合作為畢業(yè)設計的主算法。協(xié)同過濾的核心假設是喜歡過相似物品的人未來也容易喜歡相似的東西。我在這套系統(tǒng)里同時實現(xiàn)了基于用戶的協(xié)同過濾UserCF和基于物品的協(xié)同過濾ItemCF然后按權重融合取兩者之長。4.2 基于用戶的協(xié)同過濾實現(xiàn)UserCF的思路分三步第一步計算用戶之間的相似度第二步找到和目標用戶最相似的K個用戶第三步根據(jù)這K個用戶對某些酒店的評分加權預測目標用戶對未評分酒店的評分。相似度我用的是余弦相似度計算方式是把兩個用戶的評分向量看作高維空間的兩個向量用夾角余弦衡量方向的相似性。從PySpark處理的用戶-酒店評分矩陣中我直接加載并轉為Python字典然后用內(nèi)存計算實現(xiàn)算法主體def user_cf_predict(user_id, k10): # 加載用戶的評分字典 {user_id: {hotel_id: rating}} ratings load_rating_matrix() target_user_ratings ratings[user_id] # 計算目標用戶與其他所有用戶的余弦相似度 sims [] for other_id, other_ratings in ratings.items(): if other_id user_id: continue common set(target_user_ratings.keys()) set(other_ratings.keys()) if len(common) 0: continue # 點積 / 模長乘積 dot sum(target_user_ratings[h] * other_ratings[h] for h in common) norm1 sum(r ** 2 for r in target_user_ratings.values()) ** 0.5 norm2 sum(r ** 2 for r in other_ratings.values()) ** 0.5 sim dot / (norm1 * norm2 1e-9) sims.append((other_id, sim)) # 取相似度最高的k個用戶 sims.sort(keylambda x: x[1], reverseTrue) top_k sims[:k] # 加權預測目標用戶對候選酒店的評分 candidate_hotels set() for other_id, _ in top_k: candidate_hotels.update(ratings[other_id].keys()) candidate_hotels - set(target_user_ratings.keys()) pred_scores {} for hotel in candidate_hotels: score 0 sim_sum 0 for other_id, sim in top_k: if hotel in ratings[other_id]: score sim * ratings[other_id][hotel] sim_sum abs(sim) if sim_sum 0: pred_scores[hotel] score / sim_sum return sorted(pred_scores.items(), keylambda x: x[1], reverseTrue)[:10]基于物品的協(xié)同過濾主體思路類似只是把“用戶相似”換成“物品相似”核心邏輯是先建立物品間相似度矩陣再根據(jù)用戶歷史評分過的物品去找相似的物品。4.3 混合推薦與熱度兜底UserCF和ItemCF各有利弊。UserCF在用戶數(shù)量少但物品數(shù)量多的時候效果更靈敏它更偏向社會化和熱點發(fā)現(xiàn)而ItemCF更穩(wěn)定適合用戶興趣比較固定的場景。我實際測試后發(fā)現(xiàn)單用任何一種都會出現(xiàn)部分用戶推薦列表為空或冷門物品被遺忘的情況因此我做了加權混合最終得分 0.5 * UserCF得分 0.4 * ItemCF得分 0.1 * 酒店熱度分。熱度分是我額外設計的用于緩解冷啟動問題。計算方式為熱度分 0.4 * 歸一化評論數(shù) 0.3 * 歸一化評分 0.3 * 歸一化點擊瀏覽數(shù)。這個混合策略保證了系統(tǒng)對新注冊用戶無評分歷史也能推薦當前熱門酒店不至于頁面空白。4.4 評估指標怎么寫進論文畢設論文里光有算法還不夠還得有實驗分析。推薦系統(tǒng)最常見的離線評估指標有三個精確率、召回率和覆蓋率。我的做法是隨機留出20%的評分作為測試集用剩余80%訓練算法然后對每個測試用戶生成Top10推薦列表計算預測命中比例。實測下來這套混合推薦在500用戶、3000酒店的數(shù)據(jù)規(guī)模下精確率大概在18%到22%之間召回率在12%左右覆蓋率能到30%以上。這個數(shù)據(jù)不算驚艷但作為本科畢設已經(jīng)很有說服力而且我把不同K值下的效果變化做了折線圖表直接放進論文的實驗章節(jié)。酒店知識圖譜實體建模、Neo4j存儲與前端交互5.1 從數(shù)據(jù)到知識圖譜里有哪些實體和關系知識圖譜本質上是把散落的、孤立的數(shù)據(jù)變成相互關聯(lián)的知識網(wǎng)絡非常契合酒店領域的業(yè)務形態(tài)。酒店數(shù)據(jù)天然適合用圖結構表達因為酒店和城市、品牌、設施、用戶之間天然存在大量關聯(lián)關系。我把實體分為五類酒店Hotel核心實體屬性包括名稱、價格、評分、地址、經(jīng)緯度城市City酒店所在城市品牌Brand酒店所屬品牌如某國際連鎖品牌或本土品牌設施Facility如健身房、游泳池、免費停車、行政酒廊等星級Star從經(jīng)濟型到豪華型的等級對應的關系有酒店-位于-城市、酒店-屬于-品牌、酒店-提供-設施、酒店-屬于-星級。有了這四類關系整張圖就能表達出“上海的某連鎖酒店提供健身房且屬于高檔型”這樣的復雜信息。5.2 Neo4j寫入與Cypher查詢知識圖譜的存儲我用的是Neo4j它是目前使用率最高的圖數(shù)據(jù)庫。安裝Neo4j之后我用PySpark處理好的結構化數(shù)據(jù)通過py2neo庫批量寫入。寫一個最關鍵的Cypher例子用于創(chuàng)建酒店和城市的關系MERGE (c:City {name: 上海}) MERGE (h:Hotel {name: 上海某酒店, price: 780, score: 4.5}) MERGE (h)-[:LOCATED_IN]-(c)MERGE語句是Neo4j中非常重要的概念如果節(jié)點已存在則不重復創(chuàng)建這是防止批量導入大量重復數(shù)據(jù)的關鍵。我還為酒店和品牌、酒店和設施創(chuàng)建了類似的關系。等數(shù)據(jù)全部導入后我可以執(zhí)行這樣一條查詢找出上海所有評分大于4.5且?guī)Ы∩矸康木频闙ATCH (h:Hotel)-[:LOCATED_IN]-(c:City {name: 上海}), (h)-[:HAS_FACILITY]-(f:Facility {name: 健身房}) WHERE h.score 4.5 RETURN h.name, h.price, h.score這種多跳關聯(lián)查詢在傳統(tǒng)關系型數(shù)據(jù)庫里要寫多重JOIN而在圖數(shù)據(jù)庫里就是一行模式匹配的事。把這個查詢示例寫進論文能非常直觀地體現(xiàn)知識圖譜的查詢優(yōu)勢。5.3 圖譜可視化從Neo4j到Vue前端Neo4j自帶的Browser就可以可視化圖結構但既然是個Web畢設項目就必須在自家系統(tǒng)里嵌入一個交互式的知識圖譜頁面。技術選型上我用的是Vue3加ECharts的關系圖。ECharts雖然常用圖表類型是折線圖和柱狀圖但它的graph系列也能很好地展示關系網(wǎng)絡。在Vue3中我通過Axios調(diào)用后端接口把Neo4j查到的節(jié)點和關系轉成ECharts需要的nodes和links格式const chartData { nodes: res.data.nodes.map(n ({ id: n.id, name: n.name, category: n.category, symbolSize: n.category Hotel ? 60 : 40, itemStyle: { color: categoryColor[n.category] }, })), links: res.data.links.map(l ({ source: l.source, target: l.target, label: { show: true, formatter: l.relation } })) };ECharts關系圖支持節(jié)點拖拽、縮放、點擊高亮等交互。這個頁面做完之后用戶可以點擊某個城市節(jié)點圖譜會自動高亮該城市下的所有酒店及其關聯(lián)設施交互體驗非常直觀。在答辯演示現(xiàn)場這個頁面往往是老師停留時間最長的一塊。數(shù)據(jù)分析可視化與Web系統(tǒng)整體集成6.1 從統(tǒng)計報表到多維度可視化數(shù)據(jù)分析可視化是體現(xiàn)數(shù)據(jù)處理能力的重要窗口也是畢設中比較容易出效果的部分。我基于HDFS中存儲并經(jīng)過Spark聚合的結果數(shù)據(jù)用圖表展示了多個維度的分析內(nèi)容城市酒店數(shù)量分布用柱狀圖展示熱門旅游城市的酒店供給量排名價格區(qū)間分布用餅圖展示經(jīng)濟型、舒適型、高檔型、豪華型的占比評分與評論數(shù)散點圖用散點圖觀察酒店評分和評論熱度之間的相關性設施詞頻統(tǒng)計用詞云展示出現(xiàn)頻率最高的酒店設施關鍵詞這些圖表全部由ECharts渲染數(shù)據(jù)由后端的SpringBoot或Flask接口提供。Spark預聚合的數(shù)據(jù)寫入MySQL或HBase接口再從其中查詢返回給前端整體鏈路清晰且每一層都有事可講。別小看這幾個圖表答辯時老師很喜歡問“你分析了哪些維度”“發(fā)現(xiàn)了什么規(guī)律”提前準備一兩個分析結論很有必要。比如我當時總結出熱門旅游城市的中檔酒店數(shù)量最多但評分和評論數(shù)的相關性并不顯著說明口碑好的酒店不一定是熱門酒店。6.2 系統(tǒng)后端架構與前端頁面后端我采用了SpringBoot原因是Java生態(tài)成熟、和Hadoop棧關系緊密而且很多同學的課程項目用的就是Java。為了讓前端調(diào)用方便我把推薦接口、知識圖譜接口和統(tǒng)計分析接口放在一起統(tǒng)一管理。整個Web應用包含四個核心頁面推薦頁用戶輸入ID或選擇偏好系統(tǒng)返回Top10推薦酒店列表知識圖譜頁展示酒店關聯(lián)關系網(wǎng)絡支持節(jié)點點擊和縮放拖拽數(shù)據(jù)大屏頁用圖表聚合展示全國酒店數(shù)據(jù)分析結果爬蟲監(jiān)控頁展示爬蟲運行狀態(tài)、最近采集條數(shù)等前端用Vue3加Element Plus搭界面樣式追求干凈直接、偏“數(shù)據(jù)產(chǎn)品”風格。這個系統(tǒng)做完以后無論是截圖放論文還是現(xiàn)場演示效果都遠超過那種只有一個命令行輸出結果的畢設。6.3 系統(tǒng)集成時最容易出的問題集成環(huán)節(jié)最常遇到的就是環(huán)境變量和端口沖突。Hadoop的50070端口老版本是50070新版本是9870、Yarn的8088端口、Spark的4040端口、SpringBoot的8080端口、Neo4j的7474端口、Vue DevServer的5173端口這些默認端口之間并不沖突但如果你本機跑著其他服務很容易被占用。我當時就遇到過8080被占用導致SpringBoot啟動失敗的情況最后把所有服務的端口都列成一個表格逐個檢查才解決。另外一個常見問題是跨域。Vue開發(fā)服務器默認跑在5173端口后端跑在8080端口前端直接請求后端接口會報跨域錯誤。解決辦法是在后端配置CORS過濾器允許所有來源的跨域請求。這個屬于小坑但頻率極高提前配置好能省去大量聯(lián)調(diào)時間。實戰(zhàn)排雷從Hadoop到Spark再到爬蟲的典型問題匯總7.1 Hadoop相關格式化失敗與DataNode連不上Hadoop啟動格式化是高頻問題。網(wǎng)上教程說啟動前先格式化但沒說不能反復格式化。如果你格式化一次啟動了又停了改完配置又格式化就會導致NameNode的clusterID與DataNode不一致。現(xiàn)象是jps命令能看到DataNode進程但Web界面里DataNode列表是空的。解決辦法是把Hadoop的tmp目錄和dfs的name/data目錄全部刪除重新格式化。另外我建了個習慣每次做重大配置修改之前先備份原配置文件避免改壞了找不到原始狀態(tài)。7.2 PySpark相關內(nèi)存溢出與Shuffle異常PySpark跑全量數(shù)據(jù)的時候我遇到過OutOfMemory錯誤。原因是在做用戶相似度矩陣時我試圖把全量用戶的相似度廣播到所有Executor數(shù)據(jù)量一大內(nèi)存直接爆掉。解決辦法第一是調(diào)大Executor內(nèi)存在提交任務時設置spark.executor.memory4g第二是優(yōu)化代碼把需要廣播的數(shù)據(jù)控制在最小范圍只廣播TopN相似用戶而不是全量矩陣。這個教訓很適合寫在論文的“系統(tǒng)優(yōu)化”部分能顯示出你對分布式計算的深入理解。7.3 爬蟲相關驗證碼、字段缺失與封禁我實際爬取過程中印象最深的是驗證碼問題。剛開始爬某個平臺正常瀏覽頁面完全沒有驗證碼但只要爬蟲速度一快立刻彈驗證碼。后來我把下載延遲調(diào)到2秒并啟用IP輪換基本就能穩(wěn)定繞過。字段缺失也很常見部分民宿類酒店沒有評分這部分數(shù)據(jù)我做了特殊標記在推薦算法里用默認評分兜底處理。整個項目從爬蟲到可視化大概花了三周左右的時間其中環(huán)境搭建和版本兼容問題占了將近一半。這也給正在做畢設的同學一個建議不要把時間排得太滿給環(huán)境問題留足緩沖期。技術上遇到的小問題絕大多數(shù)都能在官方文檔或者Stack Overflow找到答案關鍵是學會看日志Java和Python的報錯堆棧信息其實已經(jīng)把問題定位得很清楚了靜下心來自查往往比盲目搜索更快。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
这里只有精品99视频| 人人草人| 久久综合色五月| 婷婷五月综合社区| 99亚洲无码| 婷婷天堂站| 成人草榴视频| 一点色成人网| 五月天婷婷成人网| 久久综合激情| 人人摸人人干| 久久精品视频在这里有| 日韩久久这里只有精品| 久这里只有精品| 久久婷中文字幕| 激情五月婷| 97操碰在线视频| 色99亚洲| 97丁香花五月天激情小说| 日本欧美999久久久三级片| 五月天色综合| 五月色影院| 亚洲日日日| 婷婷六月婷婷| 岛国资源网| 久久久18| 日本99视频| 永久AⅤ1| 六月激情婷婷色| 亚洲 视频 导航 一区| 国产探花一片区| 五月天成人在线视频网站| 久久激情天堂| 91成人电影| 婷婷丁香五月天中文字幕| 欧美色色色| 国产精品国产| 99热青青草| 第1影院之五月婷婷| 成熟妇人A片免费看网站| 99熟女| 五月天桃色深爱网| 国产免费一区二区三区三州老师F1F1.CC| 五月丁香六月停停| 色女伊人| 99热66| 天天色综网| 6080av| 亚州激情网| 久久婷婷91| 99热销国产这里有精品| 久久人操| 手机看片日日做夜夜| 99精品色| 亚洲aV写真天天综合网久久| 婷婷成人五月天成人文学| 久久九九爽| 九九人人自拍| 精品无码av丁香五月激情| 另类专区在线| 五月丁香成人日| 五月天婷婷激情网| 一本色综合色| 日本人人超碰| 超碰高清在线| ss五月天激情| 色久激情在线| 狠狠爱激情网| 狠狠干,狠狠操| 五月婷婷六月丁香| 亚洲情欲久久| 五月天婷婷影院| 色色色国产| 欧美精产国品一二三区| 初夜av| 亚洲一区二区无码蜜乳av| 丁香五月av在线| 九九视频这里只有精品| www.婷婷| 婷婷激情五月视频| 情欲综合网| 99热精品一| 五月天婷婷乱论小说| 日本欧美国产| 99色综合久久| aa久久| 婷婷五月小说色综合| 人人操Av| 婷婷五月大香蕉| 综合婷婷| 丁香五月黄色| 天天射天天射一道本日本社区 | 婷婷天天色| 97精品综合| 五月综合视频| 人人性久久| 激情q青青草在线婷婷| 婷婷六月天精品| 国产精品色婷婷AV综合色色| 办公室少妇激情呻吟A片在线观看| 激情5月婷婷| 日本精品干| 色色网站免费在线视频| 在线色婷婷| 91高潮喷水久久久久久久久| 色色色视频| 99精品在这里| 色色色九九九五月婷婷| 五月丁香怕怕综合| 伊人五月婷婷| 综合玖玖偷拍| 婷婷色色欧美| 一级AV片| 99无码免费视频| 五月天网站免费欧美| 五月婷在线观看| 婷婷丁香五月在线观看91| 91九色小视频| 色综合久久五月天| 9色在线视频精品观看| 超碰av在线| 五月婷婷丁香五月 | 日韩在线aaa| 亚洲人人操| 大香蕉伊在| 99热在线99| 97碰碰视频在线观看| 色九九中文字幕| 五月婷俺去也| 婷婷六月久久综合导航| 久久综合干| 99九九精品| 欧美电影在线观看| 九九一综合精品| 免费婷婷| 九色视频91| 97性视频| 激情丁香社区| 婷婷久热| WWW、日本色丁香、co m| PORNY九色9l自拍视频成人| 在线亚洲综合网| www.激情五月天.com| 日韩啪啪视频| 婷婷五月在线观看| 大香蕉婷婷丁香| 久久小片| 影音先锋91| 思思热久热| 在线综合亚洲欧美65| 开心深爱五月天| 99re视频在线播放| 亚洲小视频免费观看| 亚洲九区| 五月婷婷丁香大陆免费| 丁香五月婷婷影视先锋| 色婷婷的五月天| 丁香花综合永久入口| 激情五月天色爱| 亚洲日韩乱码一区二区三区四区| 六月狠狠综合| 超碰在线中文字幕| www99热| 六月亚洲婷婷6月中文字幕| 人人操99| 五月婷婷无码专区| 97热久久五月婷婷| 色播综合| 天天夜夜爽| 欧美日韩五月婷婷| 婷婷五月在线观看| 六月丁香激情婷婷| 五月丁香久久呀| 性生活视频98791| 国产婷婷综合在线免费视频| 天天天天操| 亚洲国产精品五月天| 五月天激情网图片| 五月激情久久综合网| 丝袜熟女一区二区三区| 激情五月天啪啪| 人妻九九九九| 亚洲视频一区| 国产资源在线视频| 五月丁香777| 激情综合青草| 狠狠色噜噜狠狠亚洲A∨| 色色色色色色网| 99riAV国产精品视频| 色五月亚洲| 色高清无码视频| 先锋男人91资源| 九月丁香亭亭| 五月婷婷狠狠干| www.91婷婷| 五月丁香婷婷成人网| 天天爽天天日人人爱| 九色综合五月天婷五月| 久热这里| 黄网免费看| 久久996re热这里只有精品无码| 丁香九色不卡aaa| 九九99九九99| 五月丁花六月丁香综合| 婷婷丁香成人在线视频| 狠狠色婷婷777| 欧美久久九九| 极品人妻VIDEOSSS人妻| 九九热大香蕉| 五月精品免费XXX| 五月天婷婷影院| 久久综合五月天激情小说网站| 激情综合激情综合| 色婷婷基地| 第四色色六月色综合| 午夜]香婷婷深深爱| 97资源碰碰| 天天碰天天插天天操| 一区视频网站| 亚洲激情五月| 丁香五月久久综合| 日本久久网| 久久久久九九九九视屏小说88| 久久香蕉影院| 五月婷婷激情性爱| 99人妻碰碰碰久久久久视| 天天操天天爽天天爱| www.五月天婷婷| 色.五月综合网| 九九视频这里只有精品| 婷婷欧美激情综合| 五月久久婷婷天堂视频| 婷婷五月激情中文字幕| 亚洲第一第二网站| 99热这里精品| 激情深爱综合网| 97色色色色色色色色色色色色色| 袁子仪视频观看| 99这里有精品视频| 99热大香蕉| 在线视频激情网站| 久久Xx| 激情AV中文| 五月丁香六月综合图| 婷婷五月天福利| 久久婷婷丁香| 超碰免费人人| 久久精彩免费视频| 色色五月婷| 99热网站| 国产亚洲精品久久久久久郑州| 99九色视频在线观看| 久操97| 色五月 五月婷婷| 亚洲色无码| 色狠狠色狠狠| 五月婷婷官网色| 五月激情综合深爱| 激情五月丁香亭亭 | 国产精品人成A片一区二区| 五月丁香婷中文| 婷婷的色色五月天| 狠狠草在线观看| 久久婷婷伊人| AA片在线观看视频在线播放| 色色网站日本91| 婷婷久综合| 国产操B| 亚洲AV日韩在线观看| 影音先锋91在线资源站| 欧美日本高清视频99| 免费成片在线观看| 日韩色色色色色| 丁香五月天AV在线| 婷婷五月丁香成人| 婷婷亚洲五月| 日本丁香五月| 色拍九九九| 色婷婷综合在线| 激情性爱五月| 五月花成人网| 天天干一干| 久久伊人大香蕉| 亚洲五月婷婷| 9热久久| www.色综合| 婷婷五月天激情综合婷婷五月天激情综合| 桔色成人在线| 天天干天天爽| 超级碰碰碰97免费| 天天 青草 丝袜制服 在线| 五月丁香婷爱在线| 天天插天天干| 另类视屏| 激情婷婷丁香五月| 天天爽天天| 亚洲99热| 十区av| 丁香五月激情宗合网| 久久婷五月综合色| 综合AV在线| 亚洲日韩一页精品发布| 久久色区| 青青久久五月天丁香婷婷| 国内在线99视频| 久99视频在线观看| 婷婷干五月综合在线播放| 猫咪伊人久久| 婷婷六月久久| 人妻操在线看| 99精品热| 欧美婷婷| 97操碰在线视频| 风流少妇A片一区二区蜜桃| 亚洲国产另类av| wWw色五月| 亚洲第一视频 久久| 色色五月天婷婷丁香| 婷婷五月成人| 99热99色| 97热精品| 欧美WW在线网| 综合五月丁香六月婷婷| 青草青草视频2免费观看| 天堂久久性| 婷婷一本和五月丁香| 97人人操| 99久久精品国产色欲| 久久在线人妻| 国产一级片色色| 久久五月综合| 91干视频| 97九色视频| 久久久久久综合五月婷婷| 大香蕉五月天| 六月丁香婷婷色狠狠久久| 插插网爽妇五月丁香| 色五月91| A片一曲| 婷婷性福五月天| 婷久久高清| 婷婷丁香色五月天久久88| 九九精品综合| 亚洲精品国产成人AV在线| 丁香五月播播| 五月婷综合激情| 天天日婷婷| 国产99热| 麻豆雪千夏| 亚洲殴洲精品Av在线| 99激情视频热| 免费视频WWW在线观看网站| 99热r| 天堂久久精品| 激情五月丁香五月| 婷婷亚洲综合| 激情婷婷亚洲五月| 亚洲在线免费成人| 丁香五月婷婷激情中文| 人人操碰| 欧美丁香五月| 99热九九这里只有精品| 91热爆在线| 这里只有精品视频222| 一区二区成人电影| 操笔无码| 97操碰98| 国产97色在线 | 日韩| 国产免费一区二区三州老师F1F1……| 色伊人婷婷| 亚洲AV网址| 精品久久9| 日韩999| 六月婷婷激情| 日本va视频| 婷婷五月精品| 久久综合影院| 另类色视频| 亚洲色色色| 成人网站免费sxj| AⅤ网站在线看| 婷婷五月天论坛| 六月婷婷日| 婷婷综合成人| 亭亭丁香久久五月| 婷婷六月久久| 91日本在线| 人妻性爱av网站| 婷婷色情 | 26uuu亚洲精品国产| 国产超碰人人| 久热在线中文字幕色999舞| 六月五月婷婷| 丁香婷婷五月色成人网站| 99福利导航| 97干97色| 操丝袜视频影院导航| 亚洲啪啪精品| AAA久久| 婷婷亚洲在线| 亚洲天堂热| 嫩草AV久久伊人妇女超级A| 操射国产日本| 婷婷五月天成人五月天| 色99视| 激情六月综合| 色色射| 狠狠色综合网| 97ai婷婷| 性按摩玩人妻HD中文字幕| 天天操狠狠操| wwW天天干| 99热99日天天干| 激情五月婷婷| 久久久久久人妻久久久久久久久久人妻久久久 | 日本精品九九九| 天天天天干| 色永久| 超碰在线94| 狠狠狠狠狠干| 五月婷婷五月天亚洲无码| 婷婷五月丁香欧洲| 99精品久久久久久久久| 99国产精品久久久久久久久久久| 91黄址| 婷婷五月深爱五月| 色六月天天激情综合网| av久热| 久久99免费视频网站| 国产精品色色| 久久女婷| 超碰在线超碰| 激情六月婷婷| 日本色综合| 久久66精品| 99亚色色色| 五月天丁香综合在线| 亚洲爆乳无码精品AAA片蜜桃| 玖玖午夜视频| 人人干女人| 深爱五月日韩| 婷婷丁香人妻天天久久| 麻豆五月丁香婷婷| 婷婷丁香五月,狠狠综合| 99er日韩| 五月婷婷激情综合| 色五月激情综合网| 我爱大香蕉| 人橾人| 青青草99热久久精品国| 国产综合丁香五月天| 色五月婷婷在线观看第一页舔| 婷婷爱五月天| 亚洲精品视频在线播放| 丁香五月婷婷网| 97精品综合久久| 激情久久五月天| 丁香五月激情综合| 粉嫩av蜜桃av蜜臀av| 在线观看婷婷5月| se影音资源在线观看| 亚洲久热无码| 亚洲色热| 成人在线视频网| 亚洲色图五月丁香| 超碰免费人人| 99色在线视频| 国产精产国品一二三在观看| 日韩熟女啪啪视频| 97成人在线视频精品| 久久99三级在线视频| 婷婷五月天性爱视频| 99啪在线视频| 欧美婷婷丁香五月社区| 久鲁鲁色网| 成人久久天天x资源站| 丁香成人综合| 五月天天天色| 午夜成人AV在线| 99亚洲天堂| 99免费视频| 丰满少妇乱A片无码| 亚洲亚洲人成综合网络| 91丨九色丨老熟女激情| 狠狠爱婷婷爱| 啪啪五月天啪啪| 99色爱| 五月天综合在线| 婷婷无码视频| 操碰色一区就去操| 开心五月婷婷婷美女| 九九色热| 激情五月综合网最新| 成人色图情色成人网 www.5b5b5bcom 五月天 | 欧美精品在线观看| 2013AV天堂| 欧美日韩91| 五月丁香成人| 色哟哟www| 激情四射五月天| 波多婷婷久久| 人人干人人干骚美女| 99综合99| 97碰在线视频| 丁香av网| 色婷婷狠狠干| 色婷婷丁香五月| 99热成人| 中文字幕,综合,91| 99性感视频| 九九99热久久精品66中文字幕| 久久婷婷色| 五月婷久久综合| 超碰九色| 五月天婷婷乱论小说| 综合网亚洲| 99热97美女| 天天色天天搡| 亚洲午夜一区二区| 亚洲AV日韩在线观看| 色综合久久天天综合网| 亚州色色色| 亚洲综合五月天婷婷丁香| 婷婷综合日本| 五月婷婷伊人在线| 国产毛片精品一区二区色欲黄A片| 中文成人在线| 五月婷婷九月婷婷九月婷婷| 色婷五月| 亚洲人妻AV| 欧美婷婷成人| 大香蕉久久伊人网| 开心五月色婷| 亚洲成av人影院| 中文字幕av在线| 激情五婷网| 日本精品久久久久中文字幕| 99色色热热| 六月激情综合| 超91在线视频| 色婷婷综合网站| 五月天激情网图片| 天天做天天爱高潮片| 久久天天| 中文字幕网站在线观看| 综合五月丁香六月婷婷| 大香伊人久色| 综合色色婷婷| 五月婷婷六月激情| 99精品在| 日比网免费国产| 视频综合网| 久热无码| 中文网AV| 九色婷婷| 天天综合.com| 激情都市另类| 天天爽天天摸| 久久蜜臀婷婷| 成人va视频| 五月婷婷之综合激情在线| 天天情色五月天| 91丁香综合| 婷婷久久五月| 乱乱av| 99综合99| 日本在线观看91| 激情五月婷婷网| 六月婷婷日| 终合激情网| www.激情五月天.con| 26uuu欧美日本| 日韩 mm 不卡| www.五月婷婷.com| 99久久精彩视频。| A片女女女女女女BBBB| 丁香五月天激情小说| 成人综合视频网址| 五月天桃色深爱网| 99热人人| 国产露脸150部国语对白| 天天操夜夜玩!| 五月天婷婷狂暴白浆| 五月天婷婷在线AN| 色婷婷丁香| 亚洲激情综合| 婷婷丁香成人五月天| 日hao1区| 97人人超| 亚洲色情在线| 六月色色| 综合久久婷婷99| 开心激情综合| 狠狠色婷婷在线| 成人做爰A片免费看网站找不到了 国产露脸150部国语对白 | AV天堂婷婷五月天| 日日操夜夜操无码免费| 开心五月网| 日日干干天天干| 亚洲精品444久久久久久| 五月激情网站| 五月丁香婷中文| 成人在线视频男人的天堂4399| 五月婷精品| 亚洲综合五月天综合| 久久婷婷电影| www色色com| 婷婷激情五月天小说校园| 五月天婷婷社区久久综合| 大香蕉综合在线| 美女美女美女三级色天天天天天| 久草A片| 91色呦哟| 久久婷婷五月天| 国模淫穴色图| 99久久66| 婷婷五月天丁香社区| 久久综合婷婷| 丁香五月激情啪| 六月天无码网址| 99热最新精品| 婷婷五月天性爱视频| 99热66| 色五月婷婷基地| 三级成人网站| 天天综合情| 综合久久久婷| 99久久超级| 无码色色色| 人人操av| 天天天天色天天天天天干| 丁香五月网站| 91精品久久久久久久久| 精品AV无码超碰| av大香蕉| 99热免| 99色色| 亚洲色无码| 在线VA视频| 久久综合中文| 91精品久久久久久久久久久久| 久久se 综合网| 久久婷婷五月天| aa久久| 色播播五月| 色婷婷五月综合网| 99∨VTV| 国产精品电影网| 久久丁香五月婷| 久色五月婷婷综合| 久久香蕉婷婷五月天| 99视频色在线观看| 日韩色色色色色| 激情婷婷久久| 国产精品色婷婷99久久精品| 精品九九网| yirenjiqingshiping| 香蕉久久国产AV一区二区| 婷婷激情图片| 99热成人| 超碰九色| 国产欧美日韩综合精品一区二区| 狠狠干狠狠色| 99精品视频在线观看| 色色五月天婷婷| 狠狠狠狠狠狠| 久久久久人妻| 99热热热99精品婷婷| 国产69久久久欧美黑人A片| 无码色色色| 亚洲九区| 成人国产欧美大片一区| 亚洲偷| 99久热视频在线| 亚洲182在线观看| 婷久久高清| 五月婷久草| 97超级碰碰碰| 大香蕉天堂| 五月天综合久久| 婷婷五月色| 色综久久AV| 亚洲五月婷婷在线| 五月婷婷九| 思思re99视频在线观看| 欧美性爱中文字幕| 五月在线| 少妇真实被内射视频三四区| 日本在线播放97| 丁香婷婷五月人体| 色欲天天综合网| 五月丁色AV| 婷婷五月天a| 人妻久久久久久久| 色五月婷婷综合| 夜精品无码A片一区二区蜜桃| 香蕉久久国产AV一区二区| 九九九干精品| 啪啪 综合网| 六月色日韩| 久噜久噜| 色婷婷狠| 人妻第九页| 韩国19 主播内部福利vip免费播放| 九色视频91疯狂| 五月婷婷综合激情| 色99在线视频| 久久激情网| 99热人人操人人操| 超碰在线99| 五月丁香另类网| 在线另类视频| yazhoujiqingav| 免费看无码视频A级| 99久热| 无码激情AAAAA片-区区| 综合网啪| 国产探花AV在线| 大香蕉久久婷婷| 欧美三级巜人妻互换| www.91在线看| 99性爱无码| 五月婷婷天堂| 思思干精品| 久久久婷婷婷| 色欲一区二区三区精品A片| 97 A I色色| 色播激情| 亚洲视频丁香网va| 婷婷综合97| 久9热视频在线| 天天操天天日天天爱| 国产五月天欧美色| 亚洲精品V天堂中文字幕| 热99久| 婷婷综合激情五月综合| www.婷婷五月天.com| 丁香五月婷婷欧美成人色图| 色的色综合| 99热播放| 九月激情综合婷婷| 天天色综合综合| 思思热在线| 人人干99| 丁香五月天激情综合| 男人的天堂婷婷色五月| 樱花99视频| 丁香九月婷婷综合| 啪色综合| 狠狠高潮精品亚洲1| 激情综合网激情五月婷婷| 天天综合久久| 色噜噜狠狠一区二区三区| 97热九九| 九九在线精点品| 色播色丁香五月| 天天夜天天色天天| 国产真实乱了老女人视频| 五月婷俺去也| 五月婷婷基地| 大香蕉精品视频| 热五月婷婷| 日本97久久久精品| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 777米奇影视第四色| 国产午夜精品一区二区三区四区| 超碰在线人妻| 婷婷综合网站| 99ri国产| 色婷婷av在线观看| 99综合视频一体| 激情五月天视频| AV在线大香蕉| 91精品久久久久| 激情九月婷婷| 激情五月天小说网| 久鲁鲁色网| 噜噜噜狠狠色综合| 婷色成人| 欧美情色电影一区二区| 亚洲色综合性| 色色热日| 96丁香六月婷婷蜜桃综合久久| 五月天色欧美| 激情五月天天狠狠久久| 久9热视频在线观看| 97碰| 六月五月丁香五月欧美| 国产99久久久国产精品免费看| 五月丁香日本在线视频观看| 99色| 色综合天天天天做夜夜| 玖色色综合| 色吧婷婷| 99热这里只有精品国产免费| 国产精产国品一二三在观看| 国模淫穴色图| 婷婷色5月激情网| 久久98| 欧美性丁香色色五月天| a毛片二逼wwwwwwwwww| 色五月亚洲| 99色在线观看| 婷婷激情六月中文| OYIWbGcPu8H| 狠狠摸狠狠摸| 97色色婷婷| 夜夜操加勒比| 日韩一级网站| 精品一二三区视频立| 变态 另类 在线| 激情五月婷婷五月丁香五月开心五月| 999久久久国产精品| 99热精品在线播放| 国产精品蜜臀99| 婷婷五月天AV在线| 激情五月综合网| 好激情在线综合网| 五月丁香婷婷综合久久| 做爰丰满少妇1313| 五月激情六月丁香| 怡红院99| 丁香五月婷婷天堂大香蕉| 色色色com| WWW,五月| 久热这里这里有精品| 国产91在线视频| 综合色色色| 婷婷五月花丁香| 色色综合色视频| 色婷婷AV在线观看| 六月婷婷综合| 色五月激情五月开心五月| 丁香午月AV中文字幕| 欧美婷婷色五月网| 99精品在线观看| 国产精品国产| 五月天婷婷黄色| 亚洲天堂久久| 综合超碰熟| 国产亚洲精品久久久久久郑州| 人人摸人人| www.五月激情红色| 欧美日韩成人在线| av免费在线网站| av高清无码| 99精品久久| 夜夜操夜夜操| 五月天激情日色在线| 色啪网| 大香蕉啪啪啪啪啪啪| 在线观看免费视频| 六月丁香五月天| 婷婷深爱五月天| 亚洲人人干| 丁香五月激情婷婷| 久久99精品日本| 五月 婷 久| 成人综合网站| 成人片在线播放| 久久婷丁香五月| 26uuu欧美日本| 六月婷婷狠狠做| 色色成人網| 秋霞性爱AV| 欧美99视频| 亚洲AV无码成人精品电影| 久久涩视频| 亚洲网在线观看| 操碰97| 亚洲中文字幕av| WWW久久久| 人妻久久婷婷| 五月天伊人久久久久| 五月婷婷丁香网| 五月婷婷精品无在线| 六月丁香婷婷色综合| 婷婷五月亚洲激情| 玖热精品综合视频| 99色色热热| 婷婷五月天AV| 久久丁香五月综合六月激情红杏视频 | 免费97碰碰| 伊人婷婷色| 狠狠干综合网| 人人人操| 97色婷婷| 开心五月深爱五月| 亚洲激情av| 狠狠干综合| 久久久亚洲精品一区二区三区浴池 | 偷拍九九热| 一区二区三区四日本| 国产日产亚系列精品版优势| 天堂伊人干| 婷婷亚洲在线| AV在线二十六页| 亚洲色色五月| 久久狠狠干| 97久久久| 五月婷婷深深爱爱| 国产精品-第3页-91JQ就要激情网91JQ5.JQJQ926.XYZ | 激情九月丁香婷婷| 欧美婷婷色五月网| 亚州综合色| 99re在线精品视频| 色六月丁香婷婷啪啪啪| 丁香婷婷偷拍| 99热只有这里才是精品| 亚洲成人五月| 中文激情网| 天天天天干| 日本波多野结衣视频| 五月丁香婷婷激情四射迷人| 91色操| 精品国产va久久久久| 欧洲日韩一区二区三区| 久久久精品色色色| 91视频精品99| 91久久久久久| 久久婷婷五月综合网| 久久九九@| 99惹| 狠狠干夜夜干| 五月天色不卡| 日本色啪| yellow视频在线观看91| 99超在线| 婷婷亚洲五月| 激情五月婷婷| 中文字幕精品推荐免费在线观| 久久大香蕉同僚| 丁香八月综合激情| 婷婷婷婷婷婷婷婷| www.色五月| 91日本在线免费| 久久色情| 99热无码| 97干免费视频| 色欲Av五月天| 99免费| 超碰在线91| 五月婷婷六月丁香首页| 99热热九九| 五月丁香六月婷婷色日| 天天操综合网| 99久精品视频| 五月天综合区| www.久久爱| 亚洲激情Av| 99热日韩这里只有精品| 丁香婷婷情色五月天| 色五月丁香五月| 五月色亚洲| tingtingzonghewang| 丁香五月婷婷亚洲综合精品| 日本在线观看99| 91碰碰碰| 玖玖五月丁香| 99精品视频播放| 婷婷偷拍网| 丁香五月婷婷AV在线| 香蕉AV777XXX色综合一区| 亚洲色图五月丁香| 99这里只有精彩视频| 色色99| 伊人久久大香线蕉av一区| 五月丁香久久丝袜啪啪| 色9999日韩国产| 丁香五月婷婷激情尤物| 五月婷婷六月开心| 熟妇内谢69XXXXXA片| 中文字幕黄色片| 婷婷五月免费视频| 天天色中文字幕女优AV| 五月天激情偷拍| 久久色区| 国产日韩av片| 婷婷五月天久久| 99在线视频观看| 婷婷五月天激情偷拍| 99爱在线精品视频免费观看| 国产精品色婷婷久久久精品| 日本社区五月天激情| 4399无码视频| 久1色色| 激情深爱五月天| 久久停停超碰| 一区视频网站| 五月婷婷综合在线| 开心激情网在线| 中文字幕中文有码在线| 五月丁香怕怕综合| 能直接看的av网站| 日本久久婷婷| 色久女| 婷婷五月丁香综合激情| 这里有精品| 色婷婷瘦婷婷日韩| 久久人妻人人| 噜噜狠狠色综合久| 色综合色| 光棍影院日韩精品| 五月丁香色六月激情干大屄| 96精品国产综合久久久久久| 五月天婷婷中文字幕在线播放| 色色婷婷综合| 色婷婷丁香五月色综合网| 久久久久久久久久久-久五月天婷婷| 日本无va视频| 人妻熟人中文字幕一区二区| 色狠狠伊人久久五月丁香| 日产精品一线二线三线芒果| 99热国内| 婷婷D区| 91丨九色丨大屁股| 成人性爱精品视频| 婷婷综合色| 久9久9久9久9久9久9| 久99热| www.激情五月天.com| 内射爽无广熟女亚洲| 五月激情偷拍婷婷| 久久91久久精品久久| 这里只有精品视频99| 91操在线观看| 亚洲情色一区| 天天爽在线视频| 熟妇人妻中文字幕无码老熟妇 | 久久加勒比| 九九操操| 激情五月婷婷网在线观看| 一本大道伊人AV久久综合| 国产,欧美,日韩,性爱| 99超碰人人| 日韩1区2区| www。五月天。com| 亚洲激情Av| 99操视频| 69午夜成人影片| 亚洲欧美国产A片免费观看| 99视频九九热| 综合亚洲五月天| 超碰69天堂| 五月丁香婷草| 久久这里在精品视频| av免费在线观看0| 久久狼人天堂| 丁香伊人激情| 五月停停色| 亚洲色五月| 亚洲中文乱字字幕在线永久| 99 热国产在| 91色五月在线观看| 五月天婷婷网站888| 丁香八月综合激情| 亚洲黄色av网站| 天天综合网站| 精品成人a v无码内射| 91狠狠综合久久久| 天天肏天天舔AV| 97人人干| 日韩精品二三区| 狠狠色丁香久久久婷| 五月丁香久久激情综合| 午夜丁香| 丁香六月伊人| 亚洲综合成人网| 婷婷天天综合| 久热成人| 色都都狠狠色都都色综合色| 深爱综合网| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 丁香花社区av| 玖玖在线视频| 99热这| 国产精品噜噜在线视频| 综合激情五月婷婷| 91在线视频观看午夜福利| 婷婷99狠狠躁天天躁| 五月丁香五月婷婷在线观看| 天天综合亚洲综合网天天αⅴ| 久久婷婷激情四射五月天| 成人精品一区日本无码网 | 午夜一区| WWW.桔色成人.COM| 久久视频九九视频| 五月丁香在线视频观看| 日韩精品一区二区亚洲AV观看| 日韩AV无码影片| 噜噜视频| 亚洲在线综合| 久草热在线视频| 激情五月,深深爱五月| 香蕉婷婷色五月| 色碰碰| 丁香五月婷婷大香蕉| 亚洲AV成人在线观看| 国产成人精品一区二三区熟女在线 | 五月婷婷丁香日韩在线| 99综合免费视频| 91爱操| 婷婷大乡焦噜噜| 婷婷日日夜夜| 五月噜噜| 五月婷婷和六月| 天天肏屄夜夜爽| 99自拍视频在线| 色五月色图| 影音先锋91资源站| 青青草99re| 五月激香蕉网| 无遮羞AV| 中文中文在线| 女人高潮内射99精品| 婷婷五月综合网| 草草视频91| 天天射综合网站| 亚洲视频二区| 9l视频自拍9l九色9l成人| 五月激情六月丁香| 人人干人人操人人摸| 久久这里有精品视频| 婷婷丁香五月天狠狠| 婷婷久久六月天| 九九九午夜影院成人| 亚洲激情五月婷婷日日| 婷婷丁香五月天欧美| 国产精品久久在线观看技巧| 日日操夜夜爽白洁| 丁香五月婷婷无码AV| 五月天婷婷午夜丁香| 丝袜人妻| 那里有AV网址| 丁香婷婷精品视频| 久久五月天激情婷婷| 操笔无码| 婷婷综合成人五月天| 1995年关宝慧版蜘蛛女| 极品五月天| 色色色色色网站| 婷婷激情六月| 91人操人人人操人| 91ncom.色| AA丁香综合激情| 免费视频WWW在线观看网站| 久久久国产精品黄毛片| 玖玖色综合色| 一起操 91N.com| 99九九视频精彩在线| 成人在线不卡| tingtingjiqingwuyue| 日操五月婷| 密桃激情五月天综合网| 婷婷丁香五月激情| 久久草中文日韩欧美| www.日日夜夜.com| 国产婷婷色综合AV蜜臀AV| 五月天丁香啪啪网| 99精品网址| 色情久久久| 久热这里只有精品在线观看| 婷婷五月天人妻| 天天搞天天爽| 99热99在线| 狠狠精品干练久久久无码中文字幕| 国产性av| 碰碰人人漕| 婷婷五月天改成什么了| 亚洲久热无码| 性视频久久| 国产成人精品一区二三区熟女在线| 欧美性爱专区| 99久久婷| 五月婷婷婷婷婷婷艺术| 天天爽天天| 九九碰九九爱97超碰| 影音先锋五月天婷婷丁香在线观看| 欧美图片丁香五月天| 五月婷婷六月丁香综合| 五月天激情www| 精品人人操| 少妇AB又爽又紧无码网站| 日韩AV在线电影| 久久精品99| 日日撸日日操| 丁香五月激情婷婷| 伊人狼人干| 久久激情视频| 婷婷五月天狠狠搞干| 亚洲成人网站在线观看| 青青久久五月| 日韩操人| 久久婷婷成人综合色怡春院| 亚洲色99| 色综合久久综合| 国产六月婷婷| 久久在这里99| 久久婷婷艹| 天天综合色丁香| 五月天婷婷激情| 97亚洲视频在线| 九九99免费视频| 狠狠色综合久久| 天天爽夜夜操| 婷婷丁香九月| 婷婷欧美激情| 青青青在线视频国产| 色婷婷综合综合网| 五月天久久丁香| 六月婷婷色综合| 久婷婷婷| 欧洲亚洲精品| 国产午夜成人免费看片无遮挡| 久婷| 九九热在线99| 99久久户外勾搭| 亚洲va欧美| 五月丁香成人| 亚洲在线成人| www色五月天| 亚洲亚洲人成综合网络| 亚洲永久四色| 无码91中文字幕| av网站不卡在线| 激情q青青草在线婷婷| 99碰碰视频| 色婷婷文字幕| 六月丁香成人网| 精品国产AV色一区二区深夜久久| 婷婷五月天丁香| 黄色成人网站在线播放| 久久婷婷草| 婷婷色正月| 亚州第一黄网| 五月丁香六月婷婷a v| 精品国产AV色一区二区深夜久久| 日本三级黄色大片| 91碰| 99热99极品观看| 婷婷成年人免费视频| 九九综合五月欧美| 亚洲另类噜噜| 九九艹女| 99热这里只有精品 搜| 操人妻AV| www.伊人天堂偷偷婷婷| 国产美女无遮挡裸体毛片A片| 丁香五月天激情婷婷丁香六月| 久久视频这里有精品99| www.色色五月天.com| 免费看成人747474九号视频在线观看| 九九久99免费视频| 99视频只有这里精品| 五月激情综合婷婷| 天天天天爽爽天干| AV网址大全在| 激情五月天激情五月天| 五月天久久激情| 亚洲激情另类| 久re热视频| 亚洲综合无码| 97干在线| 97在线精品| 色色网站免费观看| 色停停影院五月天|