色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

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

基于Spark的氣象數(shù)據(jù)處理與分析:從爬蟲到可視化完整實(shí)踐

基于Spark的氣象數(shù)據(jù)處理與分析:從爬蟲到可視化完整實(shí)踐 簡介面向大數(shù)據(jù)期末課設(shè)的Spark氣象數(shù)據(jù)處理與分析完整報(bào)告適合需要完成Spark實(shí)戰(zhàn)項(xiàng)目、掌握氣象數(shù)據(jù)分析全流程的大數(shù)據(jù)專業(yè)學(xué)生參考。項(xiàng)目基于中央氣象臺(tái)2412個(gè)城市、57888條真實(shí)天氣數(shù)據(jù)完整呈現(xiàn)從JSON異步數(shù)據(jù)爬取、CSV存儲(chǔ)、Spark DataFrame清洗聚合到matplotlib可視化的實(shí)現(xiàn)過程并給出省份、城市、天氣三級(jí)接口的解析思路與爬蟲源代碼。報(bào)告按課程設(shè)計(jì)標(biāo)準(zhǔn)撰寫章節(jié)涵蓋項(xiàng)目背景、實(shí)驗(yàn)環(huán)境、數(shù)據(jù)來源、數(shù)據(jù)獲取、數(shù)據(jù)分析與可視化其中重點(diǎn)演示了分組聚合、缺失異常值處理、窗口函數(shù)等Spark常用操作可作為課程報(bào)告或答辯展示的實(shí)用模板。內(nèi)含1個(gè)docx文檔744KB已有13405人學(xué)習(xí)適合大數(shù)據(jù)入門者對(duì)照演練。1. 基于Spark的氣象數(shù)據(jù)處理與分析一份能直接復(fù)用的大數(shù)據(jù)期末課設(shè)每年期末總有同學(xué)卡在同一個(gè)問題上Spark課設(shè)到底做什么才能既體現(xiàn)技術(shù)含量又能在兩周內(nèi)跑完這份基于Spark的氣象數(shù)據(jù)處理與分析課設(shè)項(xiàng)目走的就是一條非常務(wù)實(shí)的路線——爬取全國2412個(gè)城市、57888條整點(diǎn)天氣數(shù)據(jù)用Spark SQL完成24小時(shí)累計(jì)雨量和日均氣溫的聚合計(jì)算再用matplotlib把結(jié)果畫出來。整套流程覆蓋了數(shù)據(jù)獲取、清洗、分析、可視化四個(gè)環(huán)節(jié)技術(shù)棧就是Spark DataFrame API加Python沒有繞圈子也沒有堆砌高深算法。適合大數(shù)據(jù)專業(yè)期末課設(shè)、Spark入門實(shí)戰(zhàn)以及想了解“用Spark做氣象數(shù)據(jù)處理”完整鏈路的人。下文我按實(shí)際落地順序把環(huán)境、爬蟲、預(yù)處理、分析和踩坑點(diǎn)逐一拆開講。2. 環(huán)境與數(shù)據(jù)獲取從三級(jí)URL到57888條天氣數(shù)據(jù)的爬取鏈路2.1 實(shí)驗(yàn)環(huán)境選型與組件安裝這個(gè)課設(shè)的實(shí)驗(yàn)環(huán)境是一個(gè)典型的單機(jī)Spark開發(fā)環(huán)境不需要搭建集群。我復(fù)現(xiàn)時(shí)使用的組件版本如下表所示組件版本說明LinuxUbuntu 16.04課設(shè)報(bào)告中指定的操作系統(tǒng)Python3.9用于爬蟲、Spark任務(wù)和可視化Spark2.4.0計(jì)算引擎跑在local模式下Jupyter Notebook最新版交互式調(diào)試DataFrame和繪圖有一點(diǎn)值得注意Spark 2.4.0與Python 3.9的組合在實(shí)際使用中會(huì)有兼容性警告網(wǎng)上很多資料說Spark 2.4.0不支持Python 3.8以上的版本實(shí)際跑起來Spark SQL基礎(chǔ)功能問題不大但如果你用到pandas UDF或新的API建議直接換Spark 3.x。課設(shè)場景下沿用2.4.0沒有問題只要?jiǎng)e在它上面做太新奇的特性就行。裝完Spark和Jupyter之后還需要給Python補(bǔ)上可視化的依賴sudo apt-get install python3-matplotlib sudo apt-get install python3-tkpython3-matplotlib是繪圖庫本體python3-tk是matplotlib在本地窗口顯示圖表時(shí)需要的Tkinter后端。如果你用的是無顯示器的服務(wù)器還應(yīng)在代碼開頭加上matplotlib.use(Agg)否則繪圖時(shí)找不到顯示設(shè)備會(huì)直接報(bào)錯(cuò)。Ubuntu 16.04的apt源里自帶這兩個(gè)包優(yōu)先用它裝比pip裝更省事。2.2 三級(jí)URL接口設(shè)計(jì)先拿省份再拿城市最后拿天氣氣象數(shù)據(jù)的來源是某公開氣象服務(wù)站點(diǎn)。通過瀏覽器開發(fā)者工具觀察網(wǎng)絡(luò)請求能發(fā)現(xiàn)數(shù)據(jù)不是渲染在HTML頁面里的而是通過異步請求直接返回JSON字符串。核心的請求路徑可以歸納為下面三條層級(jí)請求路徑返回內(nèi)容省份列表/f/rest/province省份名稱與省份三位編碼城市列表/f/rest/province/{省份三位編碼}該省所有城市的名稱與城市編號(hào)整點(diǎn)天氣/f/rest/passed/{城市編號(hào)}該城市最近24小時(shí)整點(diǎn)天氣數(shù)組三級(jí)接口是典型的嵌套依賴關(guān)系省份編碼必須從第一級(jí)接口的返回里取城市編號(hào)必須從第二級(jí)接口的返回里取第三級(jí)接口才能拿到真正的氣象數(shù)據(jù)。比如某個(gè)省在省份接口里的編碼是“ABC”請求城市列表時(shí)要帶上這個(gè)編碼返回的城市數(shù)據(jù)里又有類似“58847”的城市編號(hào)把它拼到第三級(jí)URL末尾才能拿到該城市24小時(shí)整點(diǎn)數(shù)據(jù)。爬蟲就是要順著這條鏈子把全國城市依次走一遍。2.3 爬蟲代碼實(shí)現(xiàn)與CSV分段落盤爬蟲部分原課設(shè)報(bào)告用的是Python 2時(shí)期的urllib3.Request寫法但urllib3庫里并沒有Request類直接跑會(huì)報(bào)AttributeError。我改成Python 3標(biāo)準(zhǔn)庫的urllib.request邏輯保持一致import urllib.request import json import csv import codecs import os import time class WeatherCrawler: def __init__(self, base_url): self.base_url base_url def fetch_json(self, path): url self.base_url path req urllib.request.Request(url, headers{User-Agent: Mozilla/5.0}) with urllib.request.urlopen(req, timeout10) as resp: return json.loads(resp.read().decode(utf-8)) def write_csv(self, file_name, rows, write_headerFalse): if not rows: return with open(file_name, ab) as f: f.write(codecs.BOM_UTF8) writer csv.DictWriter(f, fieldnamesrows[0].keys()) if write_header: writer.writeheader() writer.writerows(rows)fetch_json里設(shè)置了User-Agent請求頭避免站點(diǎn)拒絕默認(rèn)的Python urllib請求。timeout10是超時(shí)控制防止某個(gè)城市接口卡住導(dǎo)致整個(gè)爬蟲掛起。write_csv里寫入codecs.BOM_UTF8是為了讓Excel直接打開CSV時(shí)中文不亂碼write_header參數(shù)控制是否寫表頭因?yàn)榉侄温浔P時(shí)只有第一個(gè)文件塊需要寫表頭。下面是三級(jí)數(shù)據(jù)獲取的完整調(diào)度邏輯def get_provinces(self): if os.path.exists(input/province.csv): return self.read_csv(input/province.csv) provinces self.fetch_json(/f/rest/province) self.write_csv(input/province.csv, provinces, write_headerTrue) return provinces def get_cities(self): if os.path.exists(input/city.csv): return self.read_csv(input/city.csv) cities [] for province in self.get_provinces(): code province[url].split(/)[-1].split(.)[0] cities.extend(self.fetch_json(/f/rest/province/ code)) time.sleep(1) self.write_csv(input/city.csv, cities, write_headerTrue) return cities def get_passed_weather(self): cities self.get_cities() passed_weather [] count 0 for city in cities: data self.fetch_json(/f/rest/passed/ city[code]) if data: count 1 for item in data: item[city_code] city[code] item[province] city[province] item[city_name] city[city] item[city_index] str(count) passed_weather.extend(data) time.sleep(1) if count % 50 0 and count 0: self.write_csv(input/passed_weather_ALL.csv, passed_weather, write_header(count 50)) passed_weather [] if passed_weather: self.write_csv(input/passed_weather_ALL.csv, passed_weather, write_header(count 50))這段代碼有兩個(gè)關(guān)鍵設(shè)計(jì)。第一個(gè)是冪等province.csv和city.csv已存在時(shí)直接讀取全量天氣數(shù)據(jù)已經(jīng)落盤后重新運(yùn)行也不會(huì)重復(fù)爬取想刷新數(shù)據(jù)就手動(dòng)刪掉這三個(gè)文件。第二個(gè)是每爬50個(gè)城市就落盤一次——全國2412個(gè)城市每條數(shù)據(jù)有多個(gè)整點(diǎn)記錄如果全部堆在內(nèi)存里等到最后再一次性寫文件爬半小時(shí)內(nèi)存早就爆了。分段寫入之后即使中間某個(gè)城市請求超時(shí)導(dǎo)致中斷已爬的部分也不會(huì)丟。3. Spark SQL數(shù)據(jù)預(yù)處理Schema推斷、類型轉(zhuǎn)換與異常過濾3.1 SparkSession初始化與CSV讀取數(shù)據(jù)爬下來之后下一步就是用Spark讀進(jìn)來。這里用的是Spark SQL中的DataFrame API而不是RDD——DataFrame有類型信息SQL風(fēng)格表達(dá)清晰而且Spark默認(rèn)的Catalyst優(yōu)化器會(huì)自動(dòng)優(yōu)化執(zhí)行計(jì)劃對(duì)課設(shè)這種量級(jí)的數(shù)據(jù)完全夠用。from pyspark.sql import SparkSession spark SparkSession.builder \ .appName(WeatherAnalysis) \ .master(local[4]) \ .getOrCreate() df spark.read.csv( input/passed_weather_ALL.csv, headerTrue, inferSchemaTrue )master(local[4])表示本地模式用4個(gè)線程并行執(zhí)行對(duì)六萬條數(shù)據(jù)來說綽綽有余。headerTrue把CSV第一行作為列名inferSchemaTrue讓Spark掃描數(shù)據(jù)后自動(dòng)推斷每一列的類型。這樣temperature和rain1h會(huì)被識(shí)別成double后續(xù)做數(shù)值計(jì)算不用手動(dòng)轉(zhuǎn)換。但inferSchema有一個(gè)坑如果CSV某列的前面一部分行是缺失值或非數(shù)字字符串Spark可能把整列推斷成string后面用比較運(yùn)算符直接報(bào)錯(cuò)。穩(wěn)妥的做法是在讀取后打印Schema檢查一遍df.printSchema() df.show(5, truncateFalse)printSchema()輸出的每一行格式是“列名 類型”一眼就能看出有沒有推斷錯(cuò)誤。show(5, truncateFalse)則是查看前5條原始數(shù)據(jù)truncateFalse確保長字段不會(huì)被截?cái)喾奖阒苯佑^察time字段的格式。3.2 字段選擇與數(shù)值類型轉(zhuǎn)換原課設(shè)報(bào)告里有一個(gè)很容易被忽略的細(xì)節(jié)CSV經(jīng)過Python爬蟲寫出后即使Spark用inferSchema讀入某些列的類型仍是字符串。更穩(wěn)妥的做法是在分析前顯式做一次類型轉(zhuǎn)換把注意力集中在真正需要的列上from pyspark.sql.functions import col df_rain df.select( province, city_name, city_code, rain1h ).filter( col(rain1h).cast(double) 1000 )select只取四個(gè)字段把數(shù)據(jù)寬度壓縮到最小col(rain1h).cast(double)強(qiáng)制把降雨量轉(zhuǎn)成數(shù)值型這樣即使某一行是空字符串也不會(huì)讓整個(gè)作業(yè)報(bào)錯(cuò)而是轉(zhuǎn)為null。過濾條件 1000是排除異常值——正常城市24小時(shí)累計(jì)降雨量不可能超過1000毫米一旦出現(xiàn)這種記錄基本是站點(diǎn)數(shù)據(jù)采集故障或爬取時(shí)拿到的臟數(shù)據(jù)。3.3 時(shí)間字段解析與溫度數(shù)據(jù)準(zhǔn)備溫度分析需要把time字段拆成“日期”和“小時(shí)”兩部分這就要用到pyspark.sql.functions里的兩個(gè)函數(shù)from pyspark.sql.functions import date_format, hour df_temp df.select( province, city_name, city_code, temperature, time ).withColumn( date, date_format(col(time), yyyy-MM-dd) ).withColumn( hour, hour(col(time)) )date_format(col(time), yyyy-MM-dd)從時(shí)間戳里截取日期部分hour(col(time))提取小時(shí)數(shù)值。這里的前提是CSV里time字段能被Spark識(shí)別為時(shí)間類型。如果Spark讀進(jìn)來之后time是字符串這兩個(gè)函數(shù)會(huì)返回null。遇到這種情況先看原始數(shù)據(jù)的time字段格式再?zèng)Q定是加一個(gè)to_timestamp(col(time), yyyy-MM-dd HH:mm:ss)轉(zhuǎn)換還是直接用字符串截取函數(shù)處理。整個(gè)預(yù)處理階段的目標(biāo)就是得到兩張干凈的中間表一張是帶rain1h數(shù)值的df_rain一張是帶date和hour字段的df_temp。兩張都是懶加載的DataFrame真正觸發(fā)計(jì)算的是后續(xù)的groupBy聚合操作。4. 兩個(gè)核心分析任務(wù)24小時(shí)累計(jì)雨量與四時(shí)次日均氣溫4.1 累計(jì)降雨量分析groupBy、agg與全局排序降雨量分析的思路很直接按省份和城市分組對(duì)rain1h字段求和得到每個(gè)城市過去24小時(shí)的累計(jì)雨量然后降序排列取Top-N。Spark代碼是這樣的df_rain_sum df_rain.groupBy( province, city_name, city_code ).agg( {rain1h: sum} ).withColumnRenamed( sum(rain1h), rain24h ).sort( col(rain24h).desc() )agg({rain1h: sum})是傳入字典的寫法鍵是列名值是聚合函數(shù)結(jié)果列名自動(dòng)生成為sum(rain1h)所以緊接著用withColumnRenamed重命名成rain24h后面引用起來更直觀。.sort(col(rain24h).desc())是分布式環(huán)境下的全局排序Spark會(huì)做一次shuffle把所有分區(qū)數(shù)據(jù)按雨量倒排對(duì)2400多個(gè)城市的數(shù)據(jù)量來說代價(jià)很小。排序之后head(10)可以直接取到雨量最大的十個(gè)城市這個(gè)動(dòng)作會(huì)觸發(fā)Spark真正執(zhí)行前面的所有轉(zhuǎn)換步驟top_rain df_rain_sum.head(10) for row in top_rain: print(row[city_name], row[rain24h])注意head(10)返回的是一個(gè)Row對(duì)象列表每個(gè)Row就像是Python里的字典用row[列名]取值。這一步執(zhí)行時(shí)Spark會(huì)把懶加載的整個(gè)血緣關(guān)系鏈從CSV讀取一路算到排序所以如果前面某一步寫錯(cuò)了報(bào)錯(cuò)是在這里炸出來而不是在groupBy那里。4.2 日均氣溫分析四時(shí)次篩選與聚合計(jì)算日均氣溫這一段是項(xiàng)目里最有氣象業(yè)務(wù)味道的地方。根據(jù)《地面氣象服務(wù)觀測規(guī)范》日平均氣溫取的是02時(shí)、08時(shí)、14時(shí)、20時(shí)四個(gè)時(shí)次氣溫的平均值而不是24小時(shí)整點(diǎn)氣溫的算術(shù)平均。這是氣象行業(yè)的規(guī)范直接決定了代碼里的過濾條件from pyspark.sql.functions import count, sum as spark_sum, format_number df_4point df_temp.filter( col(hour).isin([2, 8, 14, 20]) ) df_avg df_4point.groupBy( province, city_name, city_code, date ).agg( count(temperature).alias(cnt), spark_sum(temperature).alias(temp_sum) ).filter( col(cnt) 4 ).withColumn( avg_temperature, format_number(col(temp_sum) / 4.0, 1) ).select( province, city_name, city_code, date, avg_temperature )整個(gè)流水線的關(guān)鍵是先計(jì)數(shù)再求均值count(temperature)看看每個(gè)城市在目標(biāo)日期里是否四個(gè)時(shí)次的數(shù)據(jù)都齊了只有cnt 4的記錄才參與平均計(jì)算。如果某個(gè)城市某天只有3個(gè)時(shí)次的數(shù)據(jù)直接算平均氣溫會(huì)和真實(shí)值有偏差過濾掉才是嚴(yán)謹(jǐn)?shù)淖龇?。format_number(..., 1)把結(jié)果格式化成帶一位小數(shù)的字符串方便直接用于可視化展示。這個(gè)查重邏輯在課設(shè)報(bào)告里已經(jīng)說得很細(xì)但我復(fù)現(xiàn)時(shí)發(fā)現(xiàn)一個(gè)數(shù)據(jù)層面的問題爬蟲是在白天某個(gè)時(shí)刻運(yùn)行的當(dāng)天20時(shí)還沒到那么當(dāng)天20時(shí)的記錄根本不存在。原報(bào)告也提示了“建議在當(dāng)天20時(shí)30分之后再爬取數(shù)據(jù)”這說明分析結(jié)果的質(zhì)量高度依賴爬取時(shí)機(jī)。4.3 cache與coalesce性能優(yōu)化和輸出控制兩個(gè)分析任務(wù)在最后都調(diào)了cache()和coalesce(1)這一步值得展開講df_rain_sum.cache().coalesce(1).write.csv(output/rain_sum, headerTrue) df_avg.coalesce(1).write.json(output/avg_temp, headerFalse)cache()把前面經(jīng)過groupBy和sort的中間結(jié)果物化到內(nèi)存里這樣后面如果既要做head(10)又要write.csvSpark不用從頭再算兩遍。coalesce(1)是把分區(qū)數(shù)量壓縮到1個(gè)這樣CSV輸出只有一個(gè)文件而不是默認(rèn)的幾十個(gè)part-00000碎片后續(xù)直接讀這個(gè)單文件就行。但coalesce(1)不是免費(fèi)的。它本質(zhì)上是一次結(jié)果重分區(qū)把所有分區(qū)的數(shù)據(jù)拉到同一個(gè)分區(qū)再寫出數(shù)據(jù)量大時(shí)會(huì)產(chǎn)生單點(diǎn)瓶頸。雨量Top-N分析加coalesce(1)沒問題但如果以后換成每天幾十GB的氣象數(shù)據(jù)正確做法是保留分區(qū)數(shù)并寫成parquet格式不要強(qiáng)行合并成單文件。這個(gè)邊界要拎清楚。5. 常見問題與排查爬蟲、Spark和可視化里的五個(gè)坑5.1 Python 3下運(yùn)行報(bào)錯(cuò)sys.setdefaultencoding不存在現(xiàn)象把課設(shè)原爬蟲代碼直接丟到Python 3環(huán)境運(yùn)行啟動(dòng)就報(bào)AttributeError: module sys has no attribute setdefaultencoding。原因sys.setdefaultencoding(utf8)是Python 2時(shí)代處理默認(rèn)編碼的命令Python 3的默認(rèn)編碼就是UTF-8這個(gè)函數(shù)已經(jīng)被移除。原課設(shè)寫的是reload(sys)和sys.setdefaultencoding(utf8)這是典型的Python 2代碼。解決直接刪掉這兩行。如果擔(dān)心中文編碼有問題用Python 3在打開文件時(shí)指定encodingutf-8就夠了不需要再動(dòng)全局默認(rèn)編碼。這個(gè)坑幾乎是每屆課設(shè)必現(xiàn)看到這個(gè)報(bào)錯(cuò)就知道代碼是從舊版本遷移過來的。5.2 爬蟲結(jié)果CSV用Excel打開中文亂碼現(xiàn)象passed_weather_ALL.csv在終端和代碼里讀著都正常用Excel雙擊打開時(shí)中文全部變成亂碼省份名和城市名完全不可讀。原因CSV文件沒有BOM頭。Python默認(rèn)用UTF-8寫文本文件不摻BOM而Excel的CSV解析器在識(shí)別非UTF-8編碼時(shí)傾向用ANSI解碼中文結(jié)果就是亂成一團(tuán)。原報(bào)告里在write_csv中寫入codecs.BOM_UTF8就是為了解決這個(gè)問題。解決寫入CSV前先寫一次codecs.BOM_UTF8這是給Excel看的編碼標(biāo)記。注意每次打開文件追加寫入時(shí)都要判斷文件是否已存在如果已存在就不要重復(fù)加BOM否則表頭里會(huì)多出隱藏的非法字符。5.3 Spark讀CSV后數(shù)值列變成字符串過濾直接報(bào)錯(cuò)現(xiàn)象df.filter(col(rain1h) 1000)執(zhí)行時(shí)拋出分析異常提示無法用字符串和數(shù)字比較打印Schema發(fā)現(xiàn)rain1h列的類型是string而非double。原因inferSchemaTrue不是萬能的。如果CSV的前若干行里rain1h字段是空值或占位符比如--Spark在推斷類型時(shí)會(huì)認(rèn)為整列是字符串。尤其是爬蟲寫CSV時(shí)把數(shù)字轉(zhuǎn)成了字符串空字段就是空字符串更容易觸發(fā)誤判。解決最直接的辦法是用col(rain1h).cast(double)做顯式轉(zhuǎn)換再配合filter過濾。另一種做法是給read.csv顯式傳schema參數(shù)例如StructType里指定rain1h為DoubleType()徹底跳過推斷機(jī)制。從工程習(xí)慣來說顯式指定Schema比inferSchema更可靠但課設(shè)階段寫清楚cast就夠了。5.4 日均氣溫結(jié)果城市數(shù)大幅縮水只有幾百個(gè)城市現(xiàn)象計(jì)算完日均氣溫后輸出結(jié)果里的城市數(shù)遠(yuǎn)少于數(shù)據(jù)源里的2412個(gè)城市少了一半還多。檢查原始數(shù)據(jù)發(fā)現(xiàn)每個(gè)城市確實(shí)有整點(diǎn)氣溫?cái)?shù)據(jù)。原因filter(col(cnt) 4)把只擁有部分時(shí)次記錄的城市全部剔除了。爬蟲運(yùn)行時(shí)間是白天當(dāng)天20時(shí)的數(shù)據(jù)不存在有些城市02時(shí)或08時(shí)的記錄缺失湊不齊四時(shí)次的都被過濾掉了。解決四種選擇。一是按原報(bào)告建議在當(dāng)天20時(shí)30分之后再爬取保證當(dāng)天四個(gè)時(shí)次都齊二是把cnt 4放寬到cnt 3并在報(bào)告里說明“基于三時(shí)次近似計(jì)算日均氣溫”適合只想跑通流程的情況三是查看缺失時(shí)次的分布規(guī)律找出是哪幾個(gè)時(shí)次最容易缺四是修改爬蟲邏輯補(bǔ)充歷史數(shù)據(jù)接口而不是只爬最近24小時(shí)。課設(shè)報(bào)告采用的是第一種輸出的質(zhì)量是最高的。5.5 結(jié)果目錄里出現(xiàn)一堆part文件沒有單個(gè)CSV文件現(xiàn)象執(zhí)行df_rain_sum.write.csv(output/rain_sum)后打開目錄看到的是part-00000-xxx.csv、part-00001-xxx.csv十幾個(gè)文件而不是想象中的rain_sum.csv。原因Spark分布式寫入時(shí)每個(gè)分區(qū)各自寫一個(gè)文件分區(qū)數(shù)就是輸出文件數(shù)。默認(rèn)情況下shuffle之后分區(qū)數(shù)較多自然會(huì)產(chǎn)生多個(gè)part文件。這不算錯(cuò)誤但對(duì)后續(xù)人工查看數(shù)據(jù)很不方便。解決寫之前加coalesce(1)強(qiáng)制把分區(qū)數(shù)減到1輸出就只有一個(gè)part文件了。更省事的辦法是不加coalesce(1)讀取時(shí)直接spark.read.csv(output/rain_sum)讀整個(gè)目錄Spark會(huì)自動(dòng)合并多個(gè)文件的內(nèi)容。兩種方式我都用過課設(shè)評(píng)分時(shí)如果要求提交“干凈的CSV文件”就選coalesce(1)。6. 結(jié)果驗(yàn)證與可視化輸出用matplotlib把分析結(jié)果變成圖表數(shù)據(jù)分析算完不算結(jié)束還要驗(yàn)證結(jié)果正確然后再畫圖。驗(yàn)證有一個(gè)很土但很有效的辦法——抽樣對(duì)賬。我從df_rain_sum.head(10)里隨機(jī)挑了三個(gè)城市找到它們在passed_weather_ALL.csv里的所有rain1h記錄手工在Excel里求和和Spark算出的rain24h對(duì)比。三次都對(duì)得上說明聚合邏輯沒問題。這一步強(qiáng)烈建議保留它能把“代碼跑通”和“結(jié)果正確”區(qū)分開答辯時(shí)也更有底氣??梢暬糠执a比較簡短用matplotlib畫橫向條形圖展示雨量Top-10城市import matplotlib.pyplot as plt top df_rain_sum.head(10) names [row[city_name] for row in top] values [float(row[rain24h]) for row in top] plt.rcParams[font.sans-serif] [SimHei, WenQuanYi Zen Hei] plt.rcParams[axes.unicode_minus] False plt.figure(figsize(10, 6)) plt.barh(names[::-1], values[::-1]) plt.xlabel(24小時(shí)累計(jì)降雨量mm) plt.title(過去24小時(shí)累計(jì)降雨量 Top10 城市) plt.tight_layout() plt.savefig(output/rain_top10.png, dpi150)plt.rcParams兩行是解決中文字符顯示成方塊的設(shè)置SimHei是Windows下的黑體Linux下沒有時(shí)就回退到WenQuanYi Zen Hei。names[::-1]和values[::-1]是把列表倒序讓雨量最大的城市顯示在條形圖最上方符合閱讀習(xí)慣。savefig的dpi150保證圖片在答辯投屏?xí)r不模糊。氣溫分析的結(jié)果可以用類似思路畫一張散點(diǎn)圖或直方圖查看全國城市日均氣溫的分布形態(tài)。到這一步從爬蟲、清洗、聚合到出圖整條鏈路就閉環(huán)了。想起那次復(fù)現(xiàn)后半段我發(fā)現(xiàn)某個(gè)城市計(jì)算出日均氣溫為97度一查是20時(shí)的氣溫字段爬到了異常值溫度列混入了噪點(diǎn)數(shù)據(jù)。從那以后我每次做數(shù)據(jù)類課設(shè)都會(huì)強(qiáng)制走一遍“抽樣對(duì)賬”再進(jìn)入可視化這個(gè)習(xí)慣幫我擋掉了至少三次答辯翻車。希望這份基于Spark的氣象數(shù)據(jù)處理與分析課設(shè)梳理能幫你也少踩幾個(gè)同樣的坑。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美91网站| 日韩少妇无码| 老熟女乱伦一区| 在线可观看的黄色网址| 九久9热| 中文字幕诱惑制服人妻丝袜美丝袜美 | 亚州综合AⅤ| 天天综合网91| 精品一区96| 天美传媒精品久久视频| 国产av又色又爽又黄| 偷拍欧美激情| 国产一级高清免费观看| 亚洲。日韩。欧美| 色在线视频导航| 操逼操逼视频操逼| 性爱AV天堂| 欧美成人免费在线观看| 日韩有码免费视频| 久久二| 国产成人bd在线观看| 美女主播色欲91抠b在线播放| 一二三区精品视频| 中日无幕一二三四区| 亚洲猛交| 色爱综合网欧美| 黑人性欧美| 99热啪啪| 97超碰色色| 男人的天堂不卡一区二区| 性色高清..……| 中文字幕丝袜国产第一页不卡| 草b在线| 亚欧高清| 色偷偷色偷偷欧美日韩| 国产女人高潮嗷嗷嗷叫小说| 久久久99999久网站| 少妇一级婬片免费放一级a性色. | 福利视频网站| 亚洲AV在线资源| 人人操人人摸人| 99国产精品自在自在| 美女尤物人人操| 日本天天干天天日一区| 深夜激情无码| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 97综合网| m欧洲一级午老| 最新国内自拍av免费| 人人妻人人色| 强奸乱伦日韩AV| 亚洲影视高清第一页| 中文字幕在线高清男人的天堂| 97超级色碰碰| 深夜操逼网| 欧美91变态| 欧美少妇熟女| 国产精品九九九| 有码人妻系列| 日韩不卡毛片Av免费高清| 99蜜月精品久久| 综合久| 性色A∨91| 安徽熟妇视频| 亚洲古典另类欧美在线| 福利视频香蕉免费一区二区在线| 狠色婷婷久久一区二区三区_| 日韩激情中文字幕有码| 高清有码一区二区| 男人天堂导航| 色欧洲97| 国产精品色色| 天天操人人操狠狠插| 精品人妻视频一区二区在线播放 | 久久一二三四不卡 | 99国产在线绯色一区| 午夜视频好爽啊| 女人18精品一区二区三区| 亚洲中文字幕三级在线| 可以免费看黄片的视频| 日本精品加勒比海一区| 国产盗摄美女如厕大神作品在线观看| 三级片网站在线播放| 国产高清自拍视频| chaopen97久久| 欧美大香蕉97| 国产九月婷婷| 日韩激情中文字幕有码| 欧美gv在线观看| 福利天天都操| 欲射影视| 久久久久9久久久久| 成人电影一区| 久久99亚洲精品久久99果| 国产精品爆乳懂色蜜乳| 午夜福利合集| 九9热伊人| 亚洲限制级在线| 国产伦精品一区二区三区在线观| www国产天美久久久| 日本操逼视频在线| 久久97精品久久久久久久不卡| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 久久久久国产精品喷潮免费观看臀| 淫荡网址| 九九九精品美女| 美女上床网站| 2019午夜福利视频| 亚洲男人的天堂在线看| 人妻在线大香蕉| 精品国产嫩穴视频| 青娱乐 成人娱乐在线| 夜夜夜久久| 黑操B| 伊人激情| 人妻少妇精品一区二区三区| 欧美男人一区| 熟女在线视频| 久噜噜| 免费久久9999| 精品一二三区女同| 日本免费一区二区不卡| 国产女主播视频在线观看| 天天超级碰碰碰| 成人五月天色网| 成熟熟女国产精品一区二区| 黑人干亚洲| 学生妹天天看| 亚洲一区日韩精品中文字幕| 无码久久国产 | 美女十八禁| 日韩无码第3页| 麻豆熟妇乱妇熟色A片在线看| 天天在线91| 中文有码9| 欧美色院| 色婷婷香蕉| 天无日色综合| 久久久无码精品人妻二区| 午夜经典| 美国黄片aaa| 精品一区二区成人| 亚洲色五月| 日本欧美韩国日产片片在线看免| 日本高清加勒比| 超碰欧美97资源| 蜜臀99精品国产高清在线观看| 亚洲男人天堂av| WWW啪啪的com| 精品国产精品一区二区| 亚洲精品天天影视综合网 | 人妻激情视频| 国产精品毛片?v一区二区三区| 中文字幕丝袜国产第一页不卡| 国产精品国产拍高清AV| 天天淫人人妻日日色| juliaann丝袜大战黑鬼| 欧美日韩97| www国产天美久久久| 久/久精品99看9| 96AV久久久| 少妇高潮九九九九九九九| 日韩三级伦理中文字幕| 成人日韩欧美| 色偷偷综合91久久噜噜| 中文字幕一区二区日韩网| 色色色网站| 亚洲 欧美 小说| 欧美图片校园春色| 欧美极度丰满熟妇hd| 真实高潮91| 玖玖久久久| 婷婷深爱五月| 啊啊啊啊二区好大| 91色图| 亚洲一区日韩| 亚洲AV色图一区| 国产午夜福利专区综合| 密桃99999| 亚洲网污污污污| 久久久精品网站| 亚洲一区日韩| 综合色久欲| 午夜视频久久久久一区| 丝袜狠狠草尤物人妻av91| 九色 蝌蚪 熟女自| 乱论91| 亚洲淫乱骚妇AV| 国产三级片在线观看| 亚洲AV无码成人精品久久| 2019天天操天天爽天天拍| 国语少妇精| 99在线免费视频| 国产2.3.4区| 超碰成人最新最好看| 天天澡天天爽日日av| 亚洲高清视频在线免费观看| 欧美人妻色| 亚洲在线网站| 欧洲一区二区三区免费| av天堂精品久久| 大香蕉在线视频重口味毛片在线| 精品日韩人妻精品一二三区| 激情图片伦理国产一区二区日韩| 日韩精品在线放| 91女网站| 超碰国产精品久| 97色涩| 很黄很色的视频在线观看| 区一二区日韩亚洲乱码av电影| 思思热一热婷婷热一热| 天天插天天射| 日本精品五区| 久久、1234| 岛国1区2区3区在线观看| 一二三四日本视频高清| 99精品国产户外露出| 亚洲影视综合网| 亚洲牲交| 亚洲永久永久永久永久一级一级一级精品| 波多野结衣被操50分钟免费视频| 日本蜜桃| 亚洲AV无码国产精品久久久久| 五月天色图| 久久成年片色大黄全免费网站| 久草福利在线资源站| 中文一区二区婷婷视频| 国内精品久久人妻性色av| 有码人妻系列| 一区二区三区黄片免费观看| 蜜臀aV午夜一区二区三区| 国产精品无码论坛| 亚洲黑人在线| 麻豆AV96熟妇人妻| 综合久久六月久久婷婷| 久久久久久精| 一区二区三区四区五区久久久久久| 91精品伊人久久久大香线蕉91| 加勒比性爱成人在线| 日韩黄色成人性爱| 78超碰| 久操 高清| 国产在线激情视频| 综合亚州欧美| 夜夜爽妓女| 久久久久久国产无码精品| 亚洲图片 激情小说| 69精品久久久久中文字幕| 天天操天天干美女网址导航| 69综合网| 97福利视频| www久久国产精品| 熟妇高潮二区三区| 二对二中文字幕。| 天天干天天狼在线视频| 欧美男人天堂| 中文字幕一区二区三区蜜桃视频| 性爱久久| 国产成人无码啪| 国产乱子伦久久精品综合一区二区三| 飘花国产午夜精品不卡| 无码操逼天堂| 人妻美腿丝袜制服诱惑综合天堂-| 日本无码1| 2017av无码免费无线播| 91视频女生| 亚洲精品色| 天天躁日日躁AAAXX| 男女无套 免费网站| 蜜桃久久久久久久| 久久综合婷婷| 爽 好舒服 无码刺激久久| 高潮精品| 中国91AV| 性欧美999| 亚洲男人的天堂AV| 欧美 熟女 日韩| 国产一区二区三区久久久精品| 日本成人A片网站| 91P0RNY大屁股人妻| 欧美综合1性辶| 青青伊人加勒比海| 欧美 传媒 麻豆 日韩 偷拍| 大香蕉综合在线| 1禁看欧美黄片免费看| Julia Annxxxxx| www黄片免费看com| 国产黄色 A 片免费看| 亚洲AV无码成人精品久久| 97色涩| 日本熟妇人妻中出视频| 亚洲天堂性爱| 天天激情综合站| www.夜夜操| 国产第11页| 一区二区三区精品黑丝白丝酒店对鸡| 97超色| 男人的天堂va| 99∨VTV| 午夜毛片高清免费不卡| 极品销魂美女一区二区| 午夜理论片在线观看免费| 大吊色| 在线a亚洲视频播放在线| 丁香六月综合激情| 亚洲资源一区| 欧美人人AAA| 久久偷偷色综合蜜桃| 园内精品自拍视频在线播放| 精品然女一区二区| 操操逼视频| 国产农村妇女精品1区二区| 天天综合色图| 免费看美国人人爽,人人操| 久久久久久九九九九九| 婷婷久久综合| 日躁天天爽爽| 北京专精特新企业招聘信息| 少妇久久久| 一区二区三区网站日日骚| 亚洲a色| 五月婷婷综合激情| 91日韩国产欧美亚洲另类精盘州至城都| 免费一级毛片在线视频观看| 日本色日夜干| 日韩人妻播放| 亚洲丝袜二区在线| 99热这里只有精品地址| 性色aV一区二区三区噜噜| 欧美淫穴| 黄色免费一级在线毛片| 天天日美女的B| 亚洲高清无码在线桃色| 97ai亚洲| 美女毛片999| 玖玖爱免费观看视频| 热热色国产一二区AV| 天天插天天射| 99视频这有这里有精品| 久草毛片| 红杏大香蕉| 国产隔壁老王影院在线| 久久国产精品视频| 婷婷国产精品九区| 国精精品无码一二三区水多多| 好屌色综合| 精品久久久久av影院| 午夜美女诱惑电源网| 亚洲天堂男人在线| 日韩精品在线观看观看| 婷婷激情五月综合| 欧美一区二区日韩传媒搭讪精品| 欧美熟女操屄| 麻豆国产97在线| 久欲AV| 九九无码久久精品视频| 人妻日日干| 91爱| 超碰偷拍| 99操99| 久久国产逼| 夜夜夜夜久久久久| julia中文字幕在线观看| 日韩一级二级| 再深点灬舒服灬太大了添视频| 免费视频观看60秒| 91精品国产乱码| 国产a级精品| 丁香激情网| 可以在线观看的黄色网址| 密臀视频三区免费网站| 欧美爱国产综合、| 欧美 综合 亚洲| 国内精品不卡无毒99999| 俺去俺来也在线www| 麻豆久久精品亚洲精品88 | 97中文字幕一区| 青草香蕉网| 粉嫩国产精品久久粉嫩| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 亚洲免费日韩在线一区二区| 天天综合精品| 亚欧韩av| 亚洲国产欧美中日韩成人综合视频| 国产精品一区二区手机看片| 91丝袜美女视频| 亚洲好色人妻| 久久久无码精品人妻二区 | 99re视频在线观看这里只有精品| 日韩av在线播放不卡| 强奸乱伦大香蕉| 韩日性爱av| 26uuu成人影片| 91老熟女视频| 亚洲中字幕日本一区二区三区| 亚欧色图在线激情| 色五月AV| 百度百度日本操逼| 亚洲男人天堂视频| 欧美97se| 亚洲综合第一页| dy888午夜老子影视达达兔| 久久内射| 国产精品免费1区2区视频| 香伊人在线| 色综合V| 国产又色又粗又黄又爽| 高清国产成人无码| 亚洲成人在线高清| 亚洲国产成人精品无码专区| 国产伦乱91| 久青草影院| 一区二区三区高清| 男插女青青影院| 国产偷拍网站| 日日操丁香五月天| 亚洲九区| 插老姨肥穴| AV中文在线| 熟妇人妻精品一区二区视频色欲| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 久久鲁夜| 日韩精品系列| 中文字幕丰满子伦无码专区在线视频最新| AV乱伦专区| 日韩A优精品在线观看| 中文字幕aⅴ在线视频| 欧美十八禁在线看| 国产精品亚洲四五区在线观看| 屌妞视频久久久久久久 | 婷婷亚洲五月***久久| 九九热超碰| 欧美精品丝袜久久久中文字幕| 骚熟女吞| 日本女人久久久| 你懂的在线观看区国产| 亚州操逼网| 九九热超碰97亚洲最新香蕉| 老色鬼成人精品视频下载大在线观看| 大学生美女口爆| 激情综合网五月婷婷五月天| 三上制服丝AV| 伊人国产AV| 看免费的黄片| 亚洲精品aa久久伊人| 欧美色图片91| 久久亚洲日韩熟女精品| 欧美五十路熟| 91天天日| 91无码人妻精品一区二区三区蜜桃| 视频不卡中文字幕| 人妻av在线| 久久99精品九九久久久婷婷| 国产肏逼网站| 91oumei| 九区国产| 丁香五六月啪啪| 99久re热视频精品98| 亚欧免费| 一区二区三区 丝袜 高跟 美腿| 999综合色| 看全色黄大色大片免费视频| 成人欧美一区二区三区黑人一| 亚洲素人网| 青娱乐老司机视频| 91美腿丝袜在线观看| com 首页 18岁 禁区 女优 免费 精选 同城 | 欧插网站| 大香蕉淫人| 黄片www.| 亚洲美女30b| 91成人高清在线观看| 麻豆2区1区天美| 加勒比色99999| 亚洲国产午夜真人一级片中文字幕精品黄网站 | 亚洲熟女偷拍在线观看| 在线播放免费av福利片| 嗯嗯啊啊用力视频免费| 超碰偷拍| 91久久久久久久| 国产乱子伦一区二区三区免看| 蜜乳视频网站| 亚洲自拍欧美国产首页网曝 | 久久久新亚洲AV| 92福利社视频| 人人妻人人色一区二区三区| 美女一区二区国产精品| 天天综合麻豆视频| 国产精品无码论坛| 日韩欧美中文字亚洲慕| 久久久久国产无av| 无码人妻系列少妇| 人妻少妇av在线观看| 男男H黄动漫啪啪无遮挡网站| 亚洲揄拍网| 亚洲一卡2卡3卡4卡乱码网站 | 91 丝袜在线| 搞中出久久| 欧洲免费一区二| 久久精品午夜国产亚洲AV无码| 色婷婷在线视频精品导航| 久久久久九九九| 97天天弄| 一区三区啪啪| 夜夜躁狠狠躁日日躁av| 啊嗯好大视频在线观看| 成人日韩3| 日韩成人人妻网站| 日日干日日| 2025年A片视频精品| 青青伊人加勒比海| 五月天成人综合| 免费AV中文网在线观看| 艹我哪美一区无码| 影音先锋视频在线| 新视频sss国产| 99久久网站| 欧美影院一区二区三区| 91强在线播放| 女优视频第10页| 天天综合官网| 欧美精品亚洲精品日韩传电影| 91丨九色丨东北熟女| 2024黄色视频| 夜夜做夜夜爽精品视频| 国产丰满熟夫69mpp| av强奸乱轮| 少妇激情一区二区三区视频| 久久超碰免费的| 亚洲αv一区二区三区| 久午视频| 人妻少妇久久| 黄色成人网久久久久久| 亚州欧美另类| 日本人妻天堂网站在线播放| 久操操| 91老熟妇| 人人操人人精品影片| 白 大 人妻 区 在线| 91狠狠综合久久久| 福利视频一区二区微拍| 操b在线观看| 天天干18禁| 国产精品粉嫩福利在线| 怡红院怡春院| 偷拍亚洲高清图片| 啊啊啊啊嗯嗯嗯用力好爽| 久久五月天婷婷丁香中文字幕| 一本久道久久综合狠狠爱一密臀精| 色五月天AV| 丝袜AV一二三区| 无遮挡猛进视频免费无限观看| 久久美女国产| 国产精品成人午夜福利| 天天影视网色欲色香| 蜜桃精久三区| 殴美牲| 操逼日韩无码| 久草免费在线一区二区| yellow网站免费观看日韩高清无码| 老熟女91| 视频一区二区免费在线| 2019天天干| 97精| 青草成人免费视频一COm| AV男人天堂网| 97视频新免费| 欧美洲精品一级| 欧美综合 站| 久久综合女优| 久久亚洲天堂| 人妻夜夜爽天天爽麻豆三区网站 | 熟妇人妻丰满久久久久久久无码| 欧美日韩系列| 日韩三级av片| 人人妻人人澡人人爽人人精品浪潮| 日韩成人人妻网站| 亚洲欧美国产精品久久久久久久| 91精品人妻一品二品三品| 偷拍亚洲情色| 亚洲少妇视频| 强被迫伦姧在线观看无码网站| 乱伦熟女论坛| 日韩三A大片在线观看| 亚洲密乳AV| 九九干| 97人妻免费中文字幕| 国产成人一级av88| aaaa黄片| 日韩一区二区精品视频| 北京专精特新企业招聘信息| 5252色欧美在线| 亚洲第91页| 久操| 黄页| 人人人人插| 婷婷综合网| 国产黄a三级三级三级av在线看| 欧美亚洲国内自拍| 久久精9| 果冻传媒一区二区三区| 清纯唯美第一页| 懂色aV一区二区天美传媒| 欧美日韩啪啪电影| 国产强奸超碰AV| 五月激情综合网| 日韩在线欧美精品一区二区| 欧美精品第3页| 精品人妻二区三区| 97视频在线视频| 91精品人妻一区二区三区蜜臀| 国产熟女无套内射| 最新岛国大片| 97色色视频| 东北女人被操| 国产精品久久久久久片| 好涩综合| 日日噜噜夜夜狠狠视频无| 99热综合| 欧美精品三区| 91成人18| 六月丁香啪啪啪| 一区操逼| 狠狠色丁香| 啊灬啊灬啊灬啊灬高潮奶出了免费视 | 黑人精品XXX一区一二区| 精品v日韩欧美国产| 综合色图区| 日本三级精品| 久久久久久日韩| 久久久精品日本一道| 99re这里只有精品2| 色综合久久av| 日夜啪电影| 欧美成人贴图| 播播亚洲小说亚洲| 麻豆伊人网| AV天堂国产| 人妻碰碰碰碰碰碰| 亚洲AV色图| 全免费a敌肛交毛片免费| 一区二区三区四区五区高清无码永久视频| 好一吊区二区| 97人人操人人摸人人爱| 日韩不卡网操逼中文字幕日韩| 国产一级内射高清视频 | 熟妇一区,二区,三区。| 欧美 日韩 亚洲 春色| 亚洲国产精品久久久久婷婷青年| 国产一区二区在线播放| 中文字幕91页| 久久久久网站-538在线视频-欧美永久乱码| 青娱乐91| 亚洲欧美日韩精品久| 亚洲精品一二三四区| 久久久久女教师免费一区 | 屁屁影院一区二区三区国产| 欧洲亚洲人人爽爽视频| 日韩国产欧美伦理在线| 日本男人插女人的逼黄色| 不卡av在线中文字幕| 精品久久久久黄少妇| 日韩无码人妻| 亚洲视频小说| 日韩啪啪啪视频| 久久久一区二区三区三州| 丰满精品人妻少妇久久字幕| 人人贴人人摸| julia中文字幕在线观看| 日韩精品一区二区高清| 丁香婷婷激情五月天无毒不卡| 99久久久久久亚洲精品不卡| 男生女生啊啊啊啊| 中文字幕乱码人妻二区三区| 夜夜综合| 人人看欧美性爱| 亚洲清纯唯美| 国产福利在线视频网站| 97精品97久久| 亚洲黄色影视| 欧美综合另类| 色 亚洲 91| www黄片免费看com| 蜜汁欧美| 日本有码影片下载| 日韩精品一区二区高清| 天海翼久久| 久久精品国产精品亚洲艾通辽熟妇 | 青青草久草| 性色av一区二区| 另类小色呦| 亚洲不卡一| 丁香六月激情| 日本精品无码三级网站| 欧美激情 亚洲色图| 口爆综合网| 黄片com.| 伊人影院日本| 学生妹天天看| 欧美中文字幕男人天堂久久精品 | 乱抡国产91| 99re在线视频| 校园春色制服丝袜中文字亚洲| 一级黄色性爱裸体视频| 少妇高潮九九九九九九九| 欧美精品成人亚洲| 永久免费发布性爱网| 日本操逼视频在线| 久久97资源 网| 日本性感人妻91| 97超碰中文| 久久这里都是精品| 影音先锋日本一区二区| 精品人妻少妇| 欧美亚洲厕所精品偷拍91| 九九天堂| 精品人人插人人操| 九九精品无码专区免费| a'v在线资源| www.acm成人黄色毛片| 久久精品人人做人人看| 蜜臀99999| 日韩精品在线观看网站| 99久久无码| 一级片在线观看高清无码| 91色交| 啊啊啊啊啊舒服| 91丨九色丨东北熟女| 日韩精品一区二区日韩| 69精品| 久久精品国产97欧美精品亚洲| 亚洲综合888| 任你草| 国产强奸超碰AV| 国产9 9在线 | 亚洲| 久久春色| 亚洲色婷婷综合久久一区二区三区| 国产高清不卡视频| 九九九午夜| 中文字幕在线观看丝袜| 久草视频分类在线| 一级久久性爱视频| 黄色AAAAA欧美| 日本久久女同性恋视频| 青草地一本线一区二区三区| 五月婷婷青青草娱乐伊人| 久久久中文版| 男人的天堂2000| 亚洲大色堂| 偷拍网站久久男女男| 九九久久久久久爱| 9/A片 | 天天综合网1| 啊啊啊好湿久久| 精品一区二区麻豆| 九九九九九九成人| 色色99| 久久偷偷色综合蜜桃| 欧美影音在线| 亚洲天堂自拍| 操亚州| 亚洲有码第一页| 嗯嗯啊啊好大好爽| 97网址97| 日本熟妇自慰性高潮一区二区三区| 亚洲欧美在线综合| 超碰到97情色| 日韩BBN| 91精品人妻一品二品三品| 东北女人性交| 午夜精品久久久| 人人弄人人摸| 少妇啪啪自拍| 99久久久久| 国产av尤物| 夜夜高潮夜夜爽| 操淫穴亚洲五月丁香| 久久亚洲天堂| 日韩综合97p| 亚洲情色欧美| 亚洲字幕一区二区| 日本高清一区二区在线| 日本一本一区二区三区四区五区欧美日韩中文字幕 | 人乳av| 亚洲丝袜在线观看| 91美女精品| 91夜色| 精品久久久久久中文字幕三区| 亚乱色| 亚洲AV麻豆Aⅴ无码电影一| 大香蕉中文在线| 91视频伊人| www.99视频| 九九英色视频| 青青草在线视频美女| 天堂男人网| 一级黄色视频网| 色婷婷99| 久久超碰98| 欧洲一区二区三区四区在线观看| 99夜夜操| 日韩A优精品在线观看| 欧美久久草熟女| 亚洲资源网| 少妇久久久久| 色色色999| 亚洲免费97免费| 96精品久久久久久久久久| 日韩亚洲精品一区二区| 一级黄色牲爱A级片| 亚洲情色婷婷五月天| 精品白丝一区| 亚洲美女av无码| 国模精品一区二区三区苹果色戒| 男人下部插入女人下部| 欧洲人妻视频| 中文字幕123| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 99∨VTV| 日日摸日日碰| 一二三区操逼国产91| 国产AV久久久蜜爱影集| 日产中文字幕2020| 九九九九精品视频| 99超级碰免费视频| 国产亚热在线久久| 琪琪精品免费一区二区三区| 超碰97在线 欧美 国产| 欧美色另类| 天天色粽合合合合合合合| 欧美黑人91| 欧美一级美片在线观看免费| 激情五月天婷婷| 夫妻AV网站| 自拍鲍鱼一区在线高清观看免费| 久久綜合很很很| 日韩欧视频| 99色在线| 亚洲清纯综合| 欧美在线视频99| 伊人嫩草| 国产精品乱码久久| 亚洲青青青视频在线| 亚洲欧美在线丝袜| 韩日精品四区| 少妇淫妇久久久久久久| 男人的天堂2019AV| 欧美天天搞| 91久久久久久| 国产成人在线观看网址| 日韩人妻精品久久久久| 唐山老熟妇露脸啪啪叫| 日韩图区| 超97在线精品视频| 天天综合站| 日韩人妻无码专区| 亚洲国产综合图区中文字幕| 日韩AV片| 国产色产精品在线观看| 天天综合网在线| 无码外流操逼视频| 欧美熟妇乱码在线一区| 狠狠久久手机视频精品| 91久久精品国产| 免费日韩黄片| 亚洲黄色网址| 天天日少妇逼AV| 久久精品国产Aⅴ| 欧美老妇综合网| 在线a v| 亚洲综合草草| 久7色| 国内精品嫩模A∨私拍小视频| 色九九九综合| 极品尤物自安慰| 天天射夜夜| 情侣开房子拍 日韩无码 女的很漂亮| 日夜伊人网| 亚洲高清视频在线观看| 综合五月婷婷亚洲一区| 黄页av| 综合日韩激情另类图片| 亚洲天堂人妻熟妇视频| 91无遮挡| 91/欧美| 日本中文字幕在线视频| 免费国产视频| 熟妇高潮二区三区| 男人的天堂啪啪| 日韩精品色呦呦| 欧美宗合网| 超碰精品| 强奸乱伦日韩AV| 亚洲欧美黄| 亚洲精品久久一区二区三区蜜桃臀| 99热只有这里有精品| 羞涩视频| 日韩欧美~中文字| 在线天堂999| 性暴力欧美猛交在线直播| 日日日色色色色色| 99www.bibizy香蕉资源国产一区二区三区高清 | 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 久操视频这里只有精品| 大香蕉欧美伊| 丁香色色网| 久久国内| 久久超碰国产一区二区三区| AV色五月| 丝袜综合色图| 欧美日韩情色一区二区| 一级特级aaaa毛片免费观看 | 玖玖97综合| 婷婷丁香五月天综合东京热| 欧美色就是色| 精品超碰色| 天天日熟妇| 性爱综合网| 日本1区2区不卡视频| 日韩成人无码| 性欧美91| 天天操天天看| 91成人国产综合久久精品蜜月| 国产女大学生AV| 97在线公开视频| 日本新免费二区三区| 99999无码| 九九色影院| 一区二区三区视频| 欧美草草高清日韩视频| 中文字幕一品色图| 亚洲熟女一区| 一区中文字幕二区日韩| 爱爱60秒免费视频| 大香蕉97久久| 激情五月天网| 国产99久久99热这里只有精品15| 久久透逼视频| 亚洲伊人久久综合97| 亚洲欧洲日韩中文字幕一区| 97国产精品久久久久| 男人把坤坤插入女人的下体| 欧美午夜色妇色鬼| 日本道久久综合色色| 在线观看AV片| 日韩亚洲中文有码视频| 99re国产精品视频| 91东北熟女| 色老大| 91 综合网| 美女毛片999| 97国产天堂岛| 天天看高清麻豆| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 人妻天堂综合网| 91久久久久久| 91碰碰碰| 91在线免费观看处女| 精品久久99| 欧美色图亚州激情| 午夜性| 精品人妻一二三四区视频| 超碰午夜| 国产深喉| 久久精品超碰| 色欲Av人妻精品一区二| www.亚洲成人一区| 亚洲不卡三级手机播放| 影音先锋每日最新资源在线观看| 亚洲超碰97| 日韩欧美性爱电影在线观看| 亚洲巨爆乳一区二区三区四季网| 欧美日韩国产黄色片| 日韩人妻 中文字幕| 在线观看国产黄色| 另类图片五月天| 蜜臀99999| 日本天天干天天日一区| 亚洲中文字幕一区| 天美麻豆一区二区三区| 亚洲无无码αⅴ每日更新| 国产一级不卡在线观看| 日韩不卡毛片Av免费高清| 亚洲午夜av| 青春草A| 久久r精品| 日韩在线电影| 日本人妻中文字幕精品| 激情专区综合| 欧美精品另类人妖xxxx| 加勒比日本在线 | 婷婷尹人大香蕉免费| 97色插| 色眯眯av| 蜜臀久久99精品久久久电影| 秋霞曰韩R级| 伊人久久大香大香线蕉中文| 久久久草成人网站久久久草成人久久久草久久久 | 午夜120视频在线观看| 久操精品网| 欧美色图亚州激情| 国产中文字幕在线| 国产精品探花色| 久热91| 大吊色| 韩日欧亚a级| 操逼逼福利视频| 亚洲 图片 综合91| 操淫穴亚洲五月丁香 | 日韩激情啪啪啪| 婷婷五月成人| 久操在97| 无码137片内射在线影院| 日本精品第一视频在'| 殴美日韩m| 日韩人妻无码不卡网站| 国产尹人在线视频免费| 婷婷激情一区二区三区俺也去| 热热热热日日漂亮永久永久国产日| 日韩九九九| 99熟女| 亚州色图片在线色| 再深点灬舒服灬太大了添视频| 色激情五月天| 婷婷人妻激情| 18禁网站在线播放| 好屌色综合| 东京热一区二区中文字幕| 中文字幕啊啊啊在线观看视频| 热热色色综合| 黄片aaaaa一区| 亚洲日韩肥臀视频在线观看| 精品午夜福利| 蜜乳av首页| 天天搞欧美| 加勒比在线视频一区二区三区| 香蕉一区二区三区在线视频| 大香蕉伊人75| 婷婷在线播放| 神马久久久久久久久| 亚洲暴力强奸AV| 亚州色图欧美| 午夜电影在线观看无码专区| 自拍二页| 欧美性爱综合,免费| 啊好大好舒服| 国产肏逼网站| 久久五月婷| 中文字幕欧美丝袜07资源| 91久久久久久久| 超碰欧美97资源| 九九99精品| 欧美亚洲系列| 91超级碰碰碰| 91精品国产91熟女| 色哟哟国产精品免费网址| 成人怡红院| 老师充足的奶水小说| 天天视频黄| ai欧美亚洲小说| 国产精品呦一区二区三区| 青青草国产一区二区三区| .精品人妻一区二区三| 小骚逼被操的爽不爽| 岛国黄色大片网站| 玖色av| 欧美|91色综合| 成·人免费午夜在线观看| 男人的天堂欧美| 国产精品亚洲一级av第二区| 97在线观看免费| 91九色在线| 麻豆国产精品午夜视频| 久久精品老司| 深喉吞精| 欧洲乱码一区二区| 午夜精品久久久久久久久久蜜桃 | 欧美大香蕉专区网| 国产精品播放| 91丝袜美女| 欧美aa一级片| 久久久久久久久国产| 青青草视频久久| 亚洲久9| 福利风月五月天影院| 欧美大香蕉专区网| 久久久91| 男人把坤坤插入女人的下体| 美国一区二区免费视频| 久久久精选| 久久国色天香香蕉| 粉嫩av在线一区二区| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 91内射| 99国产精品自在自在| 爽爽淫人网| 国产精品自在线发布| 91性感在线| 国产精品国产| 人妻激情偷乱视频一区二区三区| 在线免费观看日韩一区| 女性91网站| #NAME?| 91色图片| 丁香色色网| 操B在线观看| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 激情六月天| 中文精品一区二去| 91社区伊人| 大香蕉手机在线| 91久久久老司机| 男人的天堂亚洲| 十八岁啪啪视频免费看| 亚洲国产美女久久久久| 性欧美| 操曰本熟女| 香一区二区三区| 国产精品一二三区福利| 久久草在线综合视频| 国模私拍一区二区三区神乳| 久久久精品网站| 中文字幕午夜精品久久久| 青青草国产盗摄一二三区| 看看小穴| 熟女乱伦二区| 人人看人人摸人人色| 中文字幕熟女人妻丝袜| 91亚洲欧美激情| 日韩欧美成人午夜福利| 日韩三级久久久| 久久毛卡| 黄色av网站在线播放| 精品九九九九九| 96久久久久| 综合色拍| 精品久久久久瑟瑟| 精品99999久久久久久| 99色在线视频| 狠狠爱综合网| 天天干天天操天天干天天操| 中文字幕,人妻,日韩| 日韩免费高清大片在线| 亚洲视频精选| 蜜臀久久久99久久久久 | A 天堂在线观看视频| 国产麻豆福利av在线播放| 亚洲影院无码在线| 亚洲福利影院一区久久| 91中出| 久久久久久久| 啊啊啊好想要| 777超碰| 人妻少妇精品久久久久久久| 精品福利| 国产农村妇女精品| 久草尤物| 一线黄色免费性爱片| 少妇3P性爱自拍| 亚洲欧美精品福利在线|