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

ARTICLE DETAIL

資訊詳情

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

Python requests實戰(zhàn):構(gòu)建京東評論爬蟲,應(yīng)對反爬與數(shù)據(jù)分類保存

Python requests實戰(zhàn):構(gòu)建京東評論爬蟲,應(yīng)對反爬與數(shù)據(jù)分類保存 簡介本資源是一個面向Python初學(xué)者與數(shù)據(jù)采集實踐者的京東商品評論爬蟲實戰(zhàn)項目聚焦于利用requests庫高效獲取并結(jié)構(gòu)化保存電商用戶反饋解決市場調(diào)研、情感分析等場景下的原始數(shù)據(jù)獲取難題。壓縮包共7個文件含3個按情感傾向分類的CSV樣本數(shù)據(jù)正面/中性/負面、核心爬蟲腳本py文件、項目說明文檔md及開源協(xié)議文件整體僅2.5MB輕量易上手。已有47人學(xué)習(xí)下載適合希望掌握HTTP請求模擬、HTML解析、反爬應(yīng)對基礎(chǔ)如請求頭偽裝、間隔控制及多類別數(shù)據(jù)歸檔邏輯的學(xué)習(xí)者。讀者可直接運行腳本復(fù)現(xiàn)完整流程獲得可擴展的評論采集框架、標準化的CSV分類存儲結(jié)構(gòu)以及適配京東頁面結(jié)構(gòu)的Selector提取經(jīng)驗為后續(xù)接入NLP分析或可視化打下堅實基礎(chǔ)。1. 項目概述從零構(gòu)建一個健壯的京東評論爬蟲最近在分析一些消費電子產(chǎn)品的市場反饋手動收集評論數(shù)據(jù)效率太低于是決定自己動手寫一個爬蟲。目標很明確用 Python 的 requests 庫把京東上指定商品的評論數(shù)據(jù)抓下來并且要按好評、中評、差評分類保存到不同的文件里。這聽起來是個很典型的爬蟲入門項目但真做起來你會發(fā)現(xiàn)從簡單的“請求-解析”到能穩(wěn)定運行、應(yīng)對反爬、處理異常的分類保存工具中間要踩的坑可不少。特別是面對京東這樣的大型電商平臺它的反爬機制和動態(tài)頁面結(jié)構(gòu)對新手來說是個不小的挑戰(zhàn)。這個項目適合有一定 Python 基礎(chǔ)想從“寫個簡單腳本”進階到“構(gòu)建實用數(shù)據(jù)采集工具”的朋友。接下來我會把整個從思路設(shè)計、代碼實現(xiàn)到問題排查的完整過程拆開揉碎了講你跟著做不僅能得到一個可用的工具更能掌握處理類似數(shù)據(jù)抓取任務(wù)的通用方法論。2. 核心思路與工具選型背后的考量2.1 為什么選擇 Requests 而不是 Scrapy 或 Selenium很多爬蟲教程一上來就推薦 Scrapy 框架或者 Selenium 自動化工具。對于京東評論這種需要處理分頁、可能涉及一些動態(tài)參數(shù)的項目它們確實有優(yōu)勢。但我堅持用最基礎(chǔ)的requests庫起步原因有三點。第一降低認知負擔聚焦核心邏輯。Scrapy 框架雖強大但其異步架構(gòu)、中間件、管道等概念對新手來說過于復(fù)雜。我們的核心任務(wù)是理解網(wǎng)絡(luò)請求的構(gòu)成、數(shù)據(jù)的提取和保存。用requests可以讓我們更清晰地看到“發(fā)送一個 HTTP 請求”和“接收一個 HTTP 響應(yīng)”這一最本質(zhì)的過程避免被框架的抽象層分散注意力。第二京東評論接口本質(zhì)是靜態(tài) API。通過瀏覽器開發(fā)者工具分析可以發(fā)現(xiàn)京東商品評論頁的數(shù)據(jù)是通過一個獨立的 JSON 接口加載的頁面本身只是提供了一個展示殼。這意味著我們不需要模擬完整的瀏覽器環(huán)境Selenium 的主要用途去渲染 JavaScript只需要找到并正確調(diào)用這個后臺接口即可。requests庫完全勝任此類任務(wù)且效率遠高于 Selenium。第三輕量化和可控性。一個純requests的腳本依賴極少部署和運行非常方便。你可以更容易地控制請求頭、請求參數(shù)、代理、超時和重試策略這對于應(yīng)對反爬策略至關(guān)重要。等我們用requests把整個流程跑通理解了反爬的各個環(huán)節(jié)后再考慮遷移到 Scrapy 以獲得更好的工程化管理會是更順滑的學(xué)習(xí)路徑。2.2 技術(shù)棧與關(guān)鍵庫解析確定了核心庫我們還需要幾個幫手來共同完成這個項目。Requests: 負責發(fā)送 HTTP 請求獲取服務(wù)器返回的數(shù)據(jù)HTML 或 JSON。它是我們與京東服務(wù)器對話的唯一工具。JSON: Python 內(nèi)置庫。京東的評論數(shù)據(jù)接口返回的是 JSON 格式的字符串我們需要用這個庫將其解析成 Python 的字典或列表方便我們提取信息。Pandas (或 csv 模塊): 用于數(shù)據(jù)保存。Pandas 的DataFrame和to_csv、to_excel方法能非常優(yōu)雅地將結(jié)構(gòu)化數(shù)據(jù)保存為文件。如果追求極簡Python 內(nèi)置的csv模塊也完全夠用。這里我選擇 Pandas因為它后續(xù)做簡單數(shù)據(jù)分析更方便。Time / Random: 用于控制請求頻率。這是應(yīng)對反爬的“道德”與“技術(shù)”必備手段。在請求間插入隨機延時可以模擬人類操作避免觸發(fā)服務(wù)器的“訪問頻率過高”限制。Re (正則表達式) 或 BeautifulSoup4: 用于解析數(shù)據(jù)。雖然核心數(shù)據(jù)來自 JSON 接口但有時我們需要從商品主頁 HTML 中提取一些初始參數(shù)如商品ID、店鋪ID。BeautifulSoup4 是更友好、更強大的 HTML 解析庫推薦使用。正則表達式則更靈活但編寫和維護難度稍大。注意不要一上來就安裝所有庫。建議先裝requests和pandas遇到解析需求時再裝beautifulsoup4。使用pip install requests pandas beautifulsoup4即可。2.3 反爬策略的預(yù)先規(guī)劃在寫第一行代碼之前我們必須想好如何應(yīng)對反爬。京東常見的反爬手段包括請求頭校驗、IP 頻率限制、請求參數(shù)簽名、返回狀態(tài)碼 429 (Too Many Requests)。請求頭 (Headers): 這是最基本也是最重要的一環(huán)。我們的請求頭必須看起來像一個真實的瀏覽器。關(guān)鍵字段包括User-Agent用戶代理、Referer來源頁、Accept-Language接受語言等。缺少或使用默認的python-requests的 User-Agent會立刻被識別為爬蟲。請求頻率: 這是觸發(fā) 429 狀態(tài)碼的主要原因。我們必須在每次請求后強制休眠一段隨機時間。例如time.sleep(random.uniform(1, 3))表示休眠1到3秒之間的一個隨機浮點數(shù)秒。這能有效降低請求頻率。會話維持: 使用requests.Session()對象。Session 可以自動處理 Cookies在多次請求間保持一定的會話狀態(tài)比單次requests.get更接近真實用戶行為。異常處理與重試: 網(wǎng)絡(luò)是不穩(wěn)定的服務(wù)器也可能臨時出錯。我們必須用try...except包裹核心請求代碼并對特定的異常如連接超時、狀態(tài)碼非200設(shè)計重試機制。參數(shù)構(gòu)造: 評論接口的 URL 通常包含一系列查詢參數(shù)如商品ID、頁碼、排序方式、評論類型等。這些參數(shù)必須完全模擬正常請求有時參數(shù)值可能經(jīng)過簡單編碼或計算。3. 實戰(zhàn)一步步拆解京東評論接口3.1 定位目標數(shù)據(jù)源找到真正的評論接口這是最關(guān)鍵的一步。我們不能去爬取商品詳情頁的 HTML因為評論是動態(tài)加載的。打開京東網(wǎng)站進入任意商品頁面例如一個手機。按下F12打開開發(fā)者工具切換到“Network” (網(wǎng)絡(luò))選項卡。在商品頁面上找到“商品評價”區(qū)域點擊“只看當前商品評價”或者切換“好評”、“中評”、“差評”標簽同時觀察 Network 面板的變化。你會看到一個新的網(wǎng)絡(luò)請求出現(xiàn)其類型 (Type) 通常是fetch或xhr名稱可能包含fetchComment、productPageComments等關(guān)鍵詞。點擊這個請求查看其詳細信息。在“Headers”標簽頁你可以看到完整的請求 URL (Request URL)。這個 URL 就是我們要攻擊的目標。它通常很長包含https://club.jd.com/comment/productPageComments.action?這樣的基礎(chǔ)路徑后面跟著一串連接的參數(shù)。在“Preview”或“Response”標簽頁你可以看到服務(wù)器返回的數(shù)據(jù)正是結(jié)構(gòu)化的 JSON 格式里面包含了評論列表、評論總數(shù)、分頁信息等。實操記錄以某款手機為例我抓取到的核心接口 URL 模式如下https://club.jd.com/comment/productPageComments.action?callbackfetchJSON_comment98productId100012345678score0sortType5page0pageSize10isShadowSku0fold1我們需要重點關(guān)注并提取其中的幾個關(guān)鍵參數(shù)productId: 商品ID從商品詳情頁的 URL 中就能找到。score: 評論類型。0-全部1-差評2-中評3-好評。page: 頁碼從0開始。pageSize: 每頁顯示的評論數(shù)最大可嘗試設(shè)置為30或50有時服務(wù)器會限制。sortType: 排序類型5通常表示按推薦排序6表示按時間排序。3.2 構(gòu)造請求頭與參數(shù)有了接口 URL我們需要用 Python 來模擬這個請求。首先構(gòu)造一個看起來像瀏覽器的請求頭。你可以直接從開發(fā)者工具的 “Headers” 里復(fù)制 “Request Headers” 部分。import requests import time import random import json # 定義一個常用的請求頭字典 headers { User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36, Referer: https://item.jd.com/, # 替換為具體商品頁地址這很重要 Accept: application/json, text/javascript, */*; q0.01, Accept-Language: zh-CN,zh;q0.9,en;q0.8, Accept-Encoding: gzip, deflate, br, # 注意requests 會自動處理 gzip這里寫上與瀏覽器一致即可 Connection: keep-alive, }接下來將 URL 中的查詢參數(shù)提取出來構(gòu)造成一個獨立的參數(shù)字典這樣便于我們動態(tài)修改page和score。# 基礎(chǔ)參數(shù) params { callback: fetchJSON_comment98, # 有時需要有時不需要視接口而定 productId: 100012345678, # 替換為目標商品ID score: 0, # 0:全部 1:差評 2:中評 3:好評 sortType: 5, page: 0, # 頁碼從0開始 pageSize: 10, isShadowSku: 0, fold: 1 }3.3 發(fā)送請求與解析 JSON 數(shù)據(jù)現(xiàn)在我們可以使用requests.Session()發(fā)送請求了。使用 Session 的好處是它會自動管理 Cookies。# 創(chuàng)建會話 session requests.Session() session.headers.update(headers) # 為會話設(shè)置默認請求頭 try: # 發(fā)送 GET 請求 response session.get(https://club.jd.com/comment/productPageComments.action, paramsparams, timeout10) # 檢查請求是否成功 response.raise_for_status() # 如果狀態(tài)碼不是200將拋出HTTPError異常 # 打印狀態(tài)碼和部分響應(yīng)內(nèi)容用于調(diào)試 print(f狀態(tài)碼: {response.status_code}) print(f響應(yīng)內(nèi)容前500字符: {response.text[:500]}) except requests.exceptions.RequestException as e: print(f請求發(fā)生錯誤: {e}) # 這里可以加入重試邏輯如果請求成功我們會得到一段文本。但直接response.json()可能會失敗因為京東的接口返回的數(shù)據(jù)有時被一個函數(shù)調(diào)用包裹著例如fetchJSON_comment98({...})。我們需要先清理這個包裝。# 假設(shè)響應(yīng)文本是 fetchJSON_comment98({...}) text response.text # 去除函數(shù)包裝和末尾的分號只提取 JSON 部分 if text.startswith(fetchJSON_comment98() and text.endswith();): json_str text[len(fetchJSON_comment98():-2] else: json_str text # 如果沒有包裝直接使用 # 將 JSON 字符串解析為 Python 字典 try: data_dict json.loads(json_str) except json.JSONDecodeError as e: print(fJSON 解析失敗: {e}) print(f原始文本: {text[:200]}) data_dict None if data_dict: # 提取評論列表 comments data_dict.get(comments, []) print(f本頁獲取到 {len(comments)} 條評論。) # 遍歷評論列表提取所需字段 for comment in comments: content comment.get(content, ) # 評論內(nèi)容 creation_time comment.get(creationTime, ) # 評論時間 score comment.get(score, 0) # 評分5分制 # ... 提取其他你需要的字段如用戶昵稱、點贊數(shù)、回復(fù)等 print(f時間{creation_time}, 評分{score}, 內(nèi)容{content[:50]}...)3.4 實現(xiàn)分頁爬取與分類邏輯單頁數(shù)據(jù)是遠遠不夠的。我們需要一個循環(huán)來爬取多頁數(shù)據(jù)并根據(jù)score參數(shù)來分類爬取。def fetch_comments_by_score(product_id, score_type, max_pages10): 根據(jù)評分類型爬取評論 :param product_id: 商品ID :param score_type: 1差評, 2中評, 3好評 :param max_pages: 最大爬取頁數(shù) :return: 評論數(shù)據(jù)列表 all_comments [] session requests.Session() session.headers.update(headers) base_params { productId: product_id, score: score_type, sortType: 5, pageSize: 10, isShadowSku: 0, fold: 1 } for page in range(0, max_pages): # 頁碼通常從0開始 print(f正在爬取 {score_type} 評價第 {page1} 頁...) params base_params.copy() params[page] page try: resp session.get(https://club.jd.com/comment/productPageComments.action, paramsparams, timeout15) resp.raise_for_status() # 清理和解析 JSON text resp.text # 這里需要根據(jù)實際接口返回調(diào)整清理邏輯 # 假設(shè)接口返回的是純JSON沒有回調(diào)函數(shù)包裝 page_data json.loads(text) comments page_data.get(comments, []) if not comments: # 如果當前頁沒有評論說明已爬完 print(f第 {page1} 頁無數(shù)據(jù)可能已爬取完畢。) break all_comments.extend(comments) print(f 本頁獲取 {len(comments)} 條累計 {len(all_comments)} 條。) # 關(guān)鍵隨機延時避免請求過快 sleep_time random.uniform(2, 5) print(f 等待 {sleep_time:.2f} 秒...) time.sleep(sleep_time) except requests.exceptions.RequestException as e: print(f第 {page1} 頁請求失敗: {e}) break except json.JSONDecodeError as e: print(f第 {page1} 頁 JSON 解析失敗: {e}) print(f 響應(yīng)內(nèi)容: {resp.text[:200]}) break return all_comments # 主程序 product_id 100012345678 # 替換為真實商品ID max_pages_per_score 20 # 每種評價類型最多爬20頁 # 分別爬取好評、中評、差評 print(開始爬取好評...) good_comments fetch_comments_by_score(product_id, 3, max_pages_per_score) print(開始爬取中評...) neutral_comments fetch_comments_by_score(product_id, 2, max_pages_per_score) print(開始爬取差評...) bad_comments fetch_comments_by_score(product_id, 1, max_pages_per_score) print(f爬取完成好評{len(good_comments)} 條 中評{len(neutral_comments)} 條 差評{len(bad_comments)} 條。)4. 數(shù)據(jù)清洗、保存與結(jié)構(gòu)化4.1 從原始數(shù)據(jù)中提取關(guān)鍵字段爬取到的每條評論是一個字典里面包含大量信息。我們需要根據(jù)分析目標提取出最有用的字段。def extract_comment_info(comment_dict): 從單條評論字典中提取關(guān)鍵信息 info { 用戶ID: comment_dict.get(id), # 評論ID 用戶昵稱: comment_dict.get(nickname, 匿名用戶), 評論內(nèi)容: comment_dict.get(content, ).strip().replace(\n, ), # 清洗換行符 評分: comment_dict.get(score, 0), # 1-5分 評論時間: comment_dict.get(creationTime, ), 點贊數(shù): comment_dict.get(usefulVoteCount, 0), 回復(fù)數(shù): comment_dict.get(replyCount, 0), 是否追評: comment_dict.get(afterUserComment, {}).get(hAfterUserComment, False), 商品顏色: comment_dict.get(productColor, ), 商品規(guī)格: comment_dict.get(productSize, ), 是否plus會員: comment_dict.get(plusAvailable, 0) 1, } # 有時圖片信息在一個嵌套的列表里 images comment_dict.get(images, []) info[圖片數(shù)量] len(images) if images else 0 info[圖片鏈接] ;.join([img.get(imgUrl, ) for img in images]) if images else return info # 應(yīng)用提取函數(shù)到所有評論列表 good_comments_cleaned [extract_comment_info(c) for c in good_comments] neutral_comments_cleaned [extract_comment_info(c) for c in neutral_comments] bad_comments_cleaned [extract_comment_info(c) for c in bad_comments]4.2 使用 Pandas 進行分類保存將清洗后的數(shù)據(jù)列表轉(zhuǎn)換為 Pandas DataFrame然后保存為 CSV 或 Excel 文件。分類保存意味著我們要生成三個獨立的文件。import pandas as pd # 創(chuàng)建DataFrame df_good pd.DataFrame(good_comments_cleaned) df_neutral pd.DataFrame(neutral_comments_cleaned) df_bad pd.DataFrame(bad_comments_cleaned) # 定義文件名前綴 file_prefix fjd_comment_{product_id} # 保存為 CSV 文件 (推薦通用性好) df_good.to_csv(f{file_prefix}_good.csv, indexFalse, encodingutf-8-sig) # utf-8-sig 解決 Excel 打開中文亂碼 df_neutral.to_csv(f{file_prefix}_neutral.csv, indexFalse, encodingutf-8-sig) df_bad.to_csv(f{file_prefix}_bad.csv, indexFalse, encodingutf-8-sig) # 或者保存為 Excel 文件 (需要安裝 openpyxl: pip install openpyxl) # with pd.ExcelWriter(f{file_prefix}_all.xlsx, engineopenpyxl) as writer: # df_good.to_excel(writer, sheet_name好評, indexFalse) # df_neutral.to_excel(writer, sheet_name中評, indexFalse) # df_bad.to_excel(writer, sheet_name差評, indexFalse) print(f數(shù)據(jù)已保存。好評文件: {file_prefix}_good.csv)4.3 數(shù)據(jù)保存的進階技巧與注意事項增量爬取如果你需要定期更新評論可以記錄已爬取評論的 ID。每次爬蟲運行時先讀取已保存的文件獲取已有的評論ID集合然后只保存新出現(xiàn)的評論。異常數(shù)據(jù)記錄在爬取過程中可以將失敗的請求 URL、狀態(tài)碼、異常信息記錄到一個單獨的日志文件中便于后續(xù)排查和重試。數(shù)據(jù)去重雖然按頁爬取通常不會重復(fù)但為了嚴謹可以在保存前根據(jù)評論ID進行去重df.drop_duplicates(subset[‘用戶ID’], inplaceTrue)。文件組織可以為每個商品創(chuàng)建一個文件夾里面存放該商品的所有評論文件使項目結(jié)構(gòu)更清晰。5. 高級話題應(yīng)對反爬與提升穩(wěn)定性5.1 處理 429 Too Many Requests 錯誤這是爬蟲最常遇到的錯誤之一。當服務(wù)器檢測到你的請求頻率過高時就會返回 429 狀態(tài)碼。我們的防御策略是“預(yù)防為主處理為輔”。增加隨機延時如前所述time.sleep(random.uniform(2, 5))是基本操作。對于反爬嚴格的網(wǎng)站可以將休眠時間延長并增加隨機性例如random.uniform(5, 10)。使用代理 IP當單個 IP 被限制后最有效的方法是切換 IP。你可以使用付費或免費的代理 IP 池。在 requests 中使用代理非常簡單proxies { http: http://your_proxy_ip:port, https: http://your_proxy_ip:port, # 注意很多代理服務(wù)器的http和https協(xié)議都用http地址 } response session.get(url, paramsparams, proxiesproxies, timeout10)你需要自己管理代理IP的獲取、驗證和輪換邏輯。這是一個相對復(fù)雜的子系統(tǒng)。優(yōu)雅的重試機制當遇到 429 或網(wǎng)絡(luò)超時等錯誤時不應(yīng)該立即崩潰而應(yīng)該等待更長時間后重試。import requests from requests.adapters import HTTPAdapter from urllib3.util.retry import Retry # 配置重試策略 retry_strategy Retry( total3, # 總重試次數(shù) backoff_factor1, # 重試等待時間 {backoff factor} * (2 ** ({number of total retries} - 1)) status_forcelist[429, 500, 502, 503, 504], # 遇到這些狀態(tài)碼就重試 ) adapter HTTPAdapter(max_retriesretry_strategy) session requests.Session() session.mount(http://, adapter) session.mount(https://, adapter) # 然后使用這個 session 進行請求它會自動處理重試5.2 動態(tài)參數(shù)與簽名破解有些網(wǎng)站的接口參數(shù)是經(jīng)過加密或簽名的比如一個sign或token參數(shù)。對于京東評論的基礎(chǔ)接口目前通常不需要處理復(fù)雜的簽名。但如果未來接口升級你可能需要仔細對比請求在開發(fā)者工具中對比你手動點擊“下一頁”時發(fā)出的多個請求觀察哪些參數(shù)發(fā)生了變化變化的規(guī)律是什么。搜索 JavaScript 源碼在開發(fā)者工具的 “Sources” 面板搜索關(guān)鍵參數(shù)名如sign、token、_等找到生成該參數(shù)的 JavaScript 函數(shù)。使用 PyExecJS 或 Node.js 環(huán)境如果參數(shù)生成邏輯不復(fù)雜可以嘗試用 Python 重寫。如果邏輯復(fù)雜涉及瀏覽器環(huán)境、加密庫可以考慮使用PyExecJS庫來執(zhí)行 JavaScript 代碼片段從而計算得到正確的參數(shù)值。這是爬蟲進階路上的一道坎。5.3 代碼健壯性封裝將上述所有功能封裝成一個類會使代碼更易管理和復(fù)用。class JDCommentCrawler: def __init__(self, product_id, base_headersNone): self.product_id product_id self.session requests.Session() self.session.headers.update(base_headers or self._get_default_headers()) # 配置重試 retry_strategy Retry(total3, backoff_factor1, status_forcelist[429, 500, 502, 503, 504]) adapter HTTPAdapter(max_retriesretry_strategy) self.session.mount(http://, adapter) self.session.mount(https://, adapter) staticmethod def _get_default_headers(): return { ... } # 返回默認請求頭 def fetch_page(self, score, page): 爬取單頁數(shù)據(jù) params { ... } # 構(gòu)造參數(shù) try: resp self.session.get(API_URL, paramsparams, timeout15) resp.raise_for_status() return self._parse_response(resp.text) except Exception as e: self._log_error(e, params) return None def crawl_by_score(self, score_type, max_pages): 爬取指定類型的所有評論 all_comments [] for page in range(max_pages): data self.fetch_page(score_type, page) if not data: break all_comments.extend(data) time.sleep(random.uniform(2, 4)) return all_comments def run(self): 主運行函數(shù) comments_map {} for score, name in [(3, good), (2, neutral), (1, bad)]: print(f開始爬取{name}評價...) comments self.crawl_by_score(score, 20) comments_map[name] comments self.save_to_csv(comments, name) return comments_map # ... 其他方法如 _parse_response, _log_error, save_to_csv 等6. 常見問題排查與實戰(zhàn)心得6.1 問題速查表問題現(xiàn)象可能原因解決方案返回狀態(tài)碼 403 Forbidden請求頭不完整或被識別為爬蟲特別是缺少Referer或User-Agent太假。1. 檢查并完善請求頭從瀏覽器直接復(fù)制。2. 嘗試添加Origin頭。3. 使用requests.Session()。返回狀態(tài)碼 429 Too Many Requests請求頻率過高IP 被暫時限制。1.立即大幅增加請求間隔如 sleep(5~10秒)。2. 暫停爬蟲一段時間如半小時后再試。3. 考慮使用代理IP。json.loads()解析失敗報錯JSONDecodeError響應(yīng)內(nèi)容不是純 JSON可能被回調(diào)函數(shù)包裝或返回了錯誤頁面如驗證碼。1. 打印response.text[:500]查看原始返回。2. 清理 JSONP 包裝如去除fetchJSON_comment98(...)。3. 檢查是否觸發(fā)了反爬返回了HTML。爬取到的comments列表為空但網(wǎng)頁上有評論1. 請求參數(shù)錯誤如productId,score。2. 接口已更新URL 或參數(shù)格式變化。3. 需要登錄才能查看。1. 用瀏覽器開發(fā)者工具抓取新的請求對比參數(shù)差異。2. 檢查score參數(shù)值是否正確0,1,2,3。3. 對于需登錄內(nèi)容難度劇增需考慮模擬登錄或獲取Cookie。只能爬到前幾頁后面返回空數(shù)據(jù)1. 頁碼page參數(shù)可能不是從0開始或增長步長不是1。2. 服務(wù)器對非登錄用戶限制了查看頁數(shù)。1. 仔細分析翻頁時請求參數(shù)的變化。2. 嘗試在登錄狀態(tài)下抓取請求獲取完整的參數(shù)。保存的 CSV 文件用 Excel 打開中文亂碼CSV 文件默認使用 UTF-8 編碼而 Excel 在中文系統(tǒng)下默認預(yù)期是 GBK/ANSI。使用encodingutf-8-sig參數(shù)保存 CSV。utf-8-sig會在文件開頭添加 BOM 頭幫助 Excel 正確識別編碼。6.2 實操心得與避坑指南“慢就是快”對于爬蟲尤其是新手最大的美德就是“慢”。把請求間隔設(shè)置得足夠長比如3秒以上能規(guī)避90%的反爬問題。急于求成狂發(fā)請求只會導(dǎo)致IP被封得不償失。從瀏覽器復(fù)制不要自己編請求頭、URL 參數(shù)盡可能從瀏覽器開發(fā)者工具里直接復(fù)制。你的“想當然”很可能和服務(wù)器預(yù)期的不一樣。先驗證單次請求再構(gòu)建循環(huán)不要一上來就寫for循環(huán)爬100頁。先確保你的代碼能正確獲取并解析第一頁的數(shù)據(jù)。用print把關(guān)鍵步驟的結(jié)果輸出看看確認無誤后再加循環(huán)和延時。關(guān)注接口的變化網(wǎng)站的接口不是一成不變的。今天能用的代碼下個月可能就失效了。如果突然爬不到數(shù)據(jù)第一件事就是重新用開發(fā)者工具抓包看看接口地址和參數(shù)有沒有變化。尊重robots.txt與法律邊界在爬取任何網(wǎng)站前理論上應(yīng)該查看其robots.txt文件例如https://www.jd.com/robots.txt了解哪些路徑是允許爬取的。更重要的是爬取的數(shù)據(jù)應(yīng)僅用于個人學(xué)習(xí)或合法的分析研究不得用于商業(yè)用途、不得惡意攻擊服務(wù)器、不得侵犯用戶隱私??刂婆廊∷俣缺苊鈱δ繕司W(wǎng)站造成負擔這是基本的網(wǎng)絡(luò)禮儀。數(shù)據(jù)存儲考慮如果爬取數(shù)據(jù)量很大CSV 文件可能會變得笨重??梢钥紤]使用 SQLitesqlite3庫或更專業(yè)的數(shù)據(jù)庫如 MySQL, PostgreSQL進行存儲便于查詢和管理。異常處理要具體不要只用except Exception一把抓。針對requests.exceptions.Timeout、ConnectionError、HTTPError以及JSONDecodeError分別進行處理可以讓你更清楚地知道程序在哪一環(huán)出了問題。這個項目從簡單的想法到能穩(wěn)定運行的工具涉及了網(wǎng)絡(luò)請求、數(shù)據(jù)解析、反爬策略、文件操作和代碼設(shè)計多個層面。核心不在于代碼多么復(fù)雜而在于對目標網(wǎng)站行為的細致觀察和對異常情況的周全考慮。當你成功運行起自己的爬蟲看到數(shù)據(jù)規(guī)整地保存到文件里時那種解決問題的成就感才是學(xué)習(xí)編程最大的樂趣之一。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
9色免费网| 日美三级| 婷婷丁香五月激情| 五月天成人伊人| 人人操超碰| 十一月婷婷激情四射| 碰碰91| 五月天婷婷AV| 丁香六月婷婷姐网| 色婷五月丁香久亚洲| 久久资源综合| 伊人喵咪a V| 久久狠狠干| 色婷婷亚洲婷婷| 日本黄色三级片内射| 五月天伊人网| 九九色综合九九色| 俺也去婷婷五月天第五色| 桃色五月婷婷| 五月色情| 性做爰1一7伦| 五月婷视频| 激情色色色| 日韩五月婷婷| 九月丁香婷婷综合激情| 国产精品久久久久久白浆色欲| 婷婷五月天成人网| 99日这里只有精品| 青青热视频| 婷婷五月丁香四射| 99热精品免费| 色偷偷五月天| 激情五月天网| 日本三级大片| 成人无码髙潮喷水A片| 色婷| 99re久久| 99热精品无码| 国产67194| 人人爱人人草| 九九热欧美| 久久婷婷五月天激情唯美| 性爱动图国产麻豆一区二区三区| 日韩日比视频在线| 日韩av在线播放综合网| 99碰碰碰| 六月婷婷AV| 国产成人综合亚洲| 色99xx| 激情五月婷婷| 色婷五月天| 综合久久婷婷| 国色天香成人网| 国产成人亚洲综合A∨婷婷| 开心色色五月天综合| 五月色婷| 五月天社区| 人妻22p| 婷婷丁香五月六月激情| 激情五月丁香综合网站| 五月天成人在线视频网站| 五月婷婷婷婷婷| 亚洲第精品| 激情婷婷五月天伊人在线观看| 成人国产欧美大片一区| 人碰人人人玩91| 91色呦哟| 六月婷欧美| 丁香五月先锋| 五月停停色| 丁香五月成人丝袜| 热九九精品| 九九热免费观看视频| 99视频地址| 亚洲综合99| 六月婷婷激情| 久久九九99字幕| 五月天激情中文字幕| 五月天婷爱综合| 亚洲婷婷五月天激情综合| 第四色婷婷五月| 美女美女美女三级色天天天天天| 天天撸夜夜爽| 五月丁香在线观看| 五月婷婷六月丁香| 丁香五月激情综合| 成人午夜免费电影| 亚洲日韩人妻操逼| 丁香五月天堂网AV| 五月丁香婷婷色| 婷婷丁香色五月亚洲| 婷婷欧美激情综合| 99这里有精品视频视频| 天天日天天插| 成人片在线免费看| 丁香五月婷婷啪| 五月婷人妻| 狠狠五月激情丁香六月| 五月婷婷丁香| 欧美日韩成人在线网站| 激情五月婷婷色综合| 日日噜狠狠色综| 五月天狠狠干| 九九亚洲| 超碰国产在线观看| 1995年关宝慧版蜘蛛女| 色婷婷五月天在线观看| 日本一级黄色片。| 亚洲sesesese| 天天爱天天做天天| 色综啪啪网| 色九九九九| 亚洲精品网站色视频| 丁香五月天天高清在线| 欧美搡BBBBB摔BBBBB| 久久日婷婷| 日韩成人免费电影| 丁香五月婷婷五月天| 操99| 日韩欧洲亚洲| 蜜臀99精品| 天天日天天插| 久久中国毛毛片爱久久| 久热这里只有精品3| 99性感视频| 日韩久热| 婷婷欧美激情| 色五月婷婷成人视频| 五月婷婷综合丁香视频| 91熟妇大香蕉| 人人视频色| 五月天色社区| 成人丁香五月婷| 婷婷五月天成人动漫| 五月天婷婷免费视频| 激情六月天| 丁香六月婷婷综合啪啪| 精品成人a v无码内射| 激情视频网址| 精品色情一区二区三区四区| 久久五月天网| 高清国产一级婬片a免费| 丁香五月婷婷六月婷| 丁香五月情| 日本A片一区| 久月婷婷| 九九热这里只有精品6| 无码人妻一区| 99草在线免费观看视频| 五月婷婷开心综合| 五月丁香婷婷五月色| 激情综合五月| 色五月综合| 国产成人+综合亚洲+天堂| 中文字幕乱轮| 光棍影院日韩精品| 九九大香蕉黄色影院| 青草青草视频2免费观看| 五月色综合网欧美网| 9久热在线视频精品| 日韩啪啪视频| 色亚洲色宗合| 夜夜操狠狠操| 五月天成人在线精品| 99热这里有精品| 日韩av在线电影| 久久九九@| 99热 在线播放| 天天舔天天操| 婷婷久久天堂网| 婷婷五月天av网| 99性色| 黄网免费看| 丁香婷婷五月六月久久| 天天久久66xxx| 这里只有精品在线观看视频| 亚洲成人色五月婷婷综合| 久操热线| 丁香五月网| 碰超亚洲| 国产激情在线观看| 99无码黄色视频| 99碰网站| 激情综合五| 五月婷婷,六月激情| 国产精自产拍久久久久久蜜| 五月色天情| 91干在线视频| 深爱激情网综合| 丁香五月 性爱| 色婷婷婷婷五月天| 婷婷在线免费| WWW.国产| 欧美日韩成人在线网| 久操福利| 婷婷影院A成人| 五月激情婷婷开心| 色播综合| 亚洲综合五月天| 婷婷日日天天| 九色婷婷| 无码少妇高潮喷水A片免费| 91人妻视频| 丁香九色不卡aaa| 天堂久久婷婷| 成人短视频在线| 中文字幕无码人妻少妇免费视频| 五月婷激情影院| 九九av| 综合xx网| 激情中文在线| 久久九网| 六月丁香久久| 激情 婷婷| av 一区三区四区| 久久人人添人人爽添人人片αV| 激情99热| 六月婷在线| 五月婷婷六月丁香在线| 五月天色丁香| 丁香六月av| 亚洲精品中文字幕成人片| 啊v视频在线观看| 人妻操在线看| 天天日狠狠| 色情婷婷。| 日韩性爱AV| 五月丁香六月婷| 天天天天爽爽天干| 99综合99| 天天成人五月天| 色吧婷婷| 色五月中文字幕| 激情六月婷婷| 亚洲色综合| 另类视频五月天| 国产色色网站网址| 另类色网| 性爱动图国产麻豆一区二区三区| 密着浓厚中出乚交尾GvG935| 开心婷婷五月| 狠狠做深爱婷婷久久综合一区| 玖玖在线视频福利| 五月停亭六月,六月停亭的英语| 热久久这里只有精品| 天天日天天色| 99亚洲视频| 91小黄书网址在线观看| 五月丁香六月婷婷手机无线| www.五月天婷婷姐姐| 黄网在线播放| 久久视频这里有精品99| 九色自拍| www狠狠| 欧美性爱一区| 超碰免费99| 天天爽天天爽夜夜爽| 久久五月天合网| 日本三级中国三级99| 曰本aaaaaa丈片| 国产真实乱对白精彩| 爽极品色| 色婷婷小说网| 天天插天天射| 亚洲精品电影| 97色色色| 亚洲最大成人综合网720P| 51国精产品自偷自偷综合| 婷婷五月激情图片| 色热久| 影视av久久久噜噜噜噜噜三级| 思思热国产视频| 啪啪一区| 这里只有精品在线播放| 天天色宗合| 天天操天天日天天操| 五月天激情Av| 99网| 五月婷婷天| 久久久无码精品成人A片小说| 5月丁香婷婷| 天天人人综合| 婷婷五月天亚洲精品| 久热这里只有精品在线观看| 伊人五月天婷婷| AV79| 色域五月婷婷丁香| 影音先锋xfplay资源男人网| 26uuu亚洲欧美| 天天谢天天操| 大香蕉久| www.91av.com| 日韩av在线免费观看| 亚洲六月综合激情久久下卡| 大香蕉Av在线| 五月丁香六月激情综合| 激情美女五月天| 久久婷婷色丁香| 五月丁香六月婷婷视频| 久99| 90色免费视频| 变态另类9| 久久99热这里| 婷婷狠狠97| 中文字幕不卡+婷婷五月| 久操婷婷| 色色五月婷婷狠狠| 超碰成人电影| www.五月天社区| 国产免费一区二区三区三州老师F1F1.CC | 国自产拍偷拍精品啪啪一区二区 | 婷婷操逼| 39视频第二区| 丁香婷婷免费| 玖玖爱资源站| 美女久久天堂| 亚洲激情亚洲激情 | 思思热久久阴99| 俺去也在线www色官网| 丁香五月五月婷婷| 精品无码久久久久久久久| 色情五月天导航| a色色色色色| 狠狠色婷| 婷婷丁香五月视频| 丁香六月久久| 九九色情网五月天| www.五月婷婷久久.com| 99这里只有精品|v| 五月天综合久久丁香91| 五月天激情视频网站| 91操片| 亚洲天堂婷婷| 色丁香综合影院| 成人综合视频在线| 五月婷中文娱乐综合| 丁香五月网站| 色色射| 狠狠色丁香久久综合婷婷亚洲成人福利| 婷婷婷狠狠| www.五月婷婷| 五月婷婷色播| 国产成人亚洲综合亚洲| 九九热短视频在线观看| 九九热精品视频在线观看| 亚洲xx网| 六月丁丁香| 亚洲六月色| 五月丁香综合网色欲| 色99色| www.韩日视频| 丁香五月综合网亚洲综合欧美狠狠| 天天日天天爽| 国产亚洲成人综合| 热99AV网站| 成人做爰高潮A片免费视频| 99啪啪网| 亚洲激情婷婷| 五月丁香婷婷老司机| 深爱五月中文字幕| 亚洲日韩一页精品发布| 国产一级婬片毛片| 99热有精品在线观看| 色婷婷文字幕| 99狠狠操一| 自拍视频在线观看9| 五月婷婷之六月丁香| 五月婷婷性爱| 全国最新疫情| 九月婷婷丁香| 丁香五月婷婷香| 婷婷激情5月| 亚洲欧美日韩VIP| 日韩久久视频| 天天日天天舔| 婷婷五月天亚洲激情戏精品| 国产黄色在线| 婷香五月激情视频| AV免费在线网站| 精品亚洲VA网站| 久草婷妨| 丁香六月婷婷综合欧美| 九九热只有精品| 色丁香五月天射婷婷爱婷婷| 天堂无码人妻精品AV一区| 99热久只有| 亚洲A片成人无码久久精品青桔| 啪啪视频99| 色5月婷婷| 久草 tingting| 亚洲婷婷激情五月天| 日本色色网| 九九热这里只有精品首页| 久久伊人五月天| 婷婷五月综合欧美在线播放| 玖玖综合色区在线观看| 婷婷人人操| 五月激情丁香五月| 蜜乳av一级av| 久久92| 亭亭五月丁香综合欧美| 国产性爱在线| 情久久综合五月天| 五月婷婷六月丁香| 夜色五月天| 亚洲视色| 五月婷婷久久久| 色婷婷九月| 激情开心五月亚洲| 亚洲旡码| 婷婷五月天性色| 婷婷五月天色播| 综合久| 99综合在线| 无码网| 丁香婷婷视频一区二区| 日本美女上人| 性爱激情综合网| 丁香五月天狠狠| 五月色综合网欧美网| 欧美性生交XXXXX无码小说| 九九无码视屏| 六月丁香成人| 操九色| 天堂无码人妻精品AV一区| 色婷婷成人五月| 婷婷久久五月| www99xxxx五月丁| 婷色五月| 婷婷色片| 六月婷婷久久大全| 五月激情偷拍婷婷| 亚洲色综合| 亚洲欧洲美女在线观| 成人视频一区| 亚洲激情另类| WWW.99热| 五月婷婷伊人网| 丁香色色五月| 四川BBB搡BBB爽爽视频| 丁香五月影院| 五月婷婷激情网| 开心激情久久久久久久| 秋霞av不能| 99ER热精品视频| 欧美天堂久久| 激情综合色五月丁香六月亚洲| 色色色五月天婷婷| 婷婷中文在线| 婷婷五月激情小说| 这里只有精彩视| 久久婷婷丁香五月一二三| 99视频在线观看视频| 这里只有精彩视频| 国产成人网址| www.婷婷| 涩五月婷婷| 婷婷伊人久久综合| 另类小说婷婷色| 天天做天天爱天天高潮| 超碰人人超碰| 久久久99久久| 五月综合丁香婷婷| 在线观看av网站| 99在线精品在线视频| 中文字幕成人| 婷婷在线播放av| 99精日本久久| 五月丁香婷婷伊人日韩| 激情 久久 婷婷| 国产真实乱了老女人视频| 玖玖热视频| 婷婷性福五月天| 激情五月天在线视频| 久久99热精品a片在线观看| 婷婷丁香午夜综合影视| 99色在线视频| 老司机午夜福利视频金瓶梅| 欧美99热| 欧美综合在线五月天色婷婷| 麻豆五月丁香婷婷| 丁香五月婷老师| 51avj视频大全| av五月天婷婷丁香| 高清无码入口| 99热精品在线播放| 天天综合网站| 99网| tingtingseav| 98永久精品| 91九色大屁股| 91婷婷丁香五月天免费视频网站| www.com色播五月天| 午夜精品久久久久久久爽| 欧美槡BBBB槡BBB少妇| 99热免费| 玖玖九九9999在线观看视频精品| 精品国产一区二区三区四区阿崩| 久久综合丁香激情五月| 日韩成人电影AV| 热久久这里只有精品| 男男野外做爰全过程69| 亚州第一A片| site:pnnrt.com| www.色9| 26uuu| 超碰人妻公开在线| 成人做爰高潮A片免费视频| 激情五月黄色| 91精品国产综合久久久不卡电影| 91超级碰在线| 少妇AB又爽又紧无码网站| 丁香五月婷婷社区| 伊人大蕉香| 丁香五月综合| 99热这里只有精品无码| 久热这里| 五月丁香六月激情| 色青五月天| 五月婷婷色播视频| 99爱在线精品视频免费观看| 婷婷丁香五月综合| 激情超碰网| 超碰人人艹| 五月综合六月丁| 淫水导航| 五月婷啪| 大香蕉福利导航| 玖玖综合玖玖| 婷婷丁香人妻| WWW,五月| 久久综合九色综合97婷婷| 好叼操在线观看| 日本啪啪网| 激情久久综合网| 丁香六月色婷婷| 艹B高清无码| av久热| 天堂草在线观| 色九九综合| 亚洲无码激情| 天天日天天添| 五月天激情综合| 影音先锋91在线资源站| 狠狠色婷婷7777久| 中文在线成人| 日本丰满久久| 亚洲婷婷婷| 丁香六月婷婷综合| 久久综合婷婷五月| 五月婷婷中文网| 五月婷婷啪啪啪| 99久久天堂婷婷| 激情精品久久| 五月色丁香| 91要啪| 丁香六月情| 九九色热| 日韩另类| 啄木鸟丝袜美女福利视频| 5月婷婷五月天| 色噜噜狠狠色综合日日| 在线日韩视频| 91久久99久久91熟女精品| 99ri国产精品| 综合久久五月天| 日本三级第一页| 思思热性操| 免费视频无码| 琪琪理论片| 天天综合五月天| 激情国产五月| 婷婷丁香五月,狠狠综合| 五月婷婷丁香五月| 久久婷五月| 黄色五月婷婷| 天天搡日日搡aaaaⅩ| 婷婷五月色激情欧美激情| 99碰碰。| 六月综合在线| 婷婷第一页| 天天干天天 亚洲| 婷婷在线视频| 天天色色婷婷| 亚洲成人免费在线| 色天天久婷婷| 国产精品18久久久| www.av骚货| 伊人五月婷| 亚洲欧州色情在线观看| 少妇性BBB搡BBB爽爽爽视頻| 婷婷丁香成人网址| 一区二区你懂的| 五月天天爱| 久啪欧美| 思思久久99热只有频精品66| 超碰伊人碰婷婷五月| 日本天天色| 色综合av超碰| 久激情网| 丝袜激情网| 亚洲综合成人网| 色婷婷五月影视| 天天做天天爱天天爽| 99精品在| 国产AV一区二区三区最新精品 | 天天色2017| 深爱五月日韩| WWW色五月| 色五月激情五月天| 婷婷的99视频网站| 色色五月婷| 婷婷激情五月综合丁| 性做久久久久久久免费看| 丁香伊人综合| 五月丁香综合| 狠狠草狠狠草| 久久婷婷青草五月天| 干一干xxxx| 五月六月丁香激情视频| 国内9l视频自拍老熟女九色| 超碰二区| 婷婷丁香激情五月| 色人久夂| 日韩二区搞逼插逼毛片| 97热这里只有精品| 丁香婷婷五月天亚洲| 97操碰在线97| 五月丁香影视| 中文av网站| 国产婷婷五月天| 搡BBBB搡BBB搡五十| 色五月丁香婷婷| 九月丁香欧美综合| 免费做A爰片77777| 激情中文在线| 去干网最新版本亚洲版| 色情综合| 亚州激情九月| 99久久国产宗和精品1上映| 日本少妇AA一级特黄大片| 麻豆雪千夏| 播五月婷婷开心| 久久婷婷六月综合综合| 免费视频无码| 久久9精品| 激情五月综合网最新 | 五月丁香六月婷婷姐| www91久久| 狠狠狠狠狠狠| 午夜成人综合| 美女五月天| 无码人妻一区二区三区四区| 超碰操网| 激情 婷婷| 综合久久激情久久| 五月婷婷六月天| 伊人五月婷婷| 丁香婷婷六月激情综合| 久久婷丁香五月| 色久天| 五月天六月婷婷电影| 91久久| 人人看人人97| 九九成人| 丁香六月婷婷综合缴| 久久久五月天网站| 五月丁香另类网| 丁香五月色| 91热99| 九九在线视频| 十一月婷婷激情四射| 国产欧美日韩一区二区三区| 综合久久综合久久| 啪啪激情综合| www久久久久久久97| 午夜丁香 婷婷| 激情综合另类| 9999综合99综合人| 国产成人精品一区二区三区视频 | 激情丁香久久| 激情五月天在线观看婷婷| 超碰成人av| 婷婷99狠狠躁天天躁中文| www.久久色.com| 亚洲mm免费| 婷婷情色五月| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 久久视频这里有精品99| 99热.com| 天天日天天色| 婷婷九月亚洲| 色九月婷婷综合| 影音先锋一区二区三区| 97色色视频| 182TV大香蕉| 久久婷婷五月天| 狠狠爱五月婷婷| 六月丁香综合| 婷婷狠狠18禁久久| 丁香六月激情综合| 五月婷婷六月天| 性做久久久久久久免费看| 欧美槡BBBB槡BBB少妇| 开心五月色婷婷综合开心网| 五月丁香婷婷成人网| 4438亚洲欧美| 婷婷综合在线网| 97碰碰人人视频| 风流少妇A片一区二区蜜桃| 日日躁夜夜躁狠狠久久AV| 韩国中文字幕91| 五月丁香婷婷色播无码| 日韩精品超碰在线观看| 婷婷久久婷婷| 成人看片网站| 另类国产综合| 欧美黑人巨大猛烈cuckold| 亚洲性色XXXXX| 婷婷五月天综合在线 | 五月婷婷在线网站| 婷婷五月六月丁香| 深爱激情五月婷婷| 亚洲日韩成人三级av| 色欧美日| 2017人人操| 91偷拍视频| 99热精品一区| 大香蕉天堂| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 久久激情综合| 新激情婷婷| 精品一二三区久久AAA片| 91久久人人操| 亚洲视99| 色婷婷五月天小说网| 丁香五月天.com| 蜜桃成语时李时珍 免费| 日韩AV在线电影| 丁香六月啪啪| 激情五月丁香激情综合网| 亚洲色婷婷五月天| 欧美三级A做爰在线观看| 欧美啪啪五月天| 五月丁香琪琪| 亚洲精品操一操、噜一噜、摸一摸、爽 | 热99精品视频五月| 久久久久久久11111111111| 婷婷丁香五月天影院 | 99视频超级精品| 激情五月天啪啪| 99九九玖玖| 一本色综合色| 日日干五月天婷婷| 天天综合精品| 99热成人| 91丨九色丨熟女| 青草激情在线| 亚洲无码色| 99热在线精品播放| 婷婷成人丁香色情基地30| 91超级碰碰碰| 亚洲无码成人网| 五月婷婷婷婷婷| 97色色婷婷| 99自拍网| 常久最新免费的色吊丝| 一本色道久久88综合日韩精品| 91五月花丁香| 色婷婷五月天成人网| 老司机伊人| 九色无码| 996er热| 99色在线观看视频者| 丁香五月婷婷少妇| 久操热| 久久久五月天婷婷成人网| 99色综合网| 97av在线视频| 香蕉狠狠爱视频| 日日日日日| 婷婷九月综合| 91操碰| 亚洲精品va| 久草热8精品视频在线观看| 99视频久久免费视频| 人妻久久久| 天天操夜夜玩!| 五月天开心色色网| 久久A V无码视频| 日韩无码乱轮| 五月天综合色| 九九亚洲无码| 超碰免费99| aa久久| 婷婷五月色情天| 欧美婷婷丁香五月社区| 久久99精品九九久久久婷婷| 久久婷色| 成人在线视频网| 日韩久久视频| www.婷婷六月天| 久久五月婷综合网| 超碰9799| 丁香五月婷婷综合网| 九九成人电影婷婷| 日日夜夜狠狠干| 黄色aa观看aaguochan| 色色网站| 色综合婷婷99| 色婷婷五月天天天干天天操天天爽 | 婷婷六月爽| 中国女人内射6XXXXX| 五月天色综合服务平台| 五月丁香婷婷色啪| 天天cha成人综合网| 开心激情站| 久久综合激情| 极品少妇高潮啪啪AV无码| 久久A热| 丁香影院五月综合| 激情无码网| 91丨九色丨熟女高潮| 超碰99在线观看| 婷婷五月开心中文字幕在线| 99热九九九九| 99精品视频偷拍| 久大香蕉| 强壮公让我夜夜高潮A片视频| 午夜成人天堂久久无码日韩久久| 五月激情站| 欧美123区免| 亚洲综合五月天婷婷丁香| 天天天久久久| 欧美色必爱| 大香蕉婷婷久久| 丁香五月另类色婷婷麻豆| 天天草天天舔| 99在线免费视频| 欧美VA在线| 国产精品久久久99视频| 99热在线网站| 99精品国产在热久久| 五月婷婷在线观看黄| 色亚洲色宗合| 久久婷婷五月天懂色| 婷婷色资源| 99热色精品| 亚洲综合色网| 26uuu欧美宗合| www色婷婷久久综合久色| 国产九九一区二区三区| 五月丁香久久综合91| 精品久久久人妻| 高清无码入口| 亚洲成人噜噜| 伊人超碰| 亚洲精品网站色视频| 天天综合色丁香| 丁香亭亭激情四射| 婷婷情色开心五月天99| 六月丁香五月天| 九九色大香蕉| 欧美α√| 色综合天天天天做夜夜| 六月丁香婷婷色综合| 一级片sese片.COM| 五月丁香六月色| 婷婷五月天BBw| 密乳视频| 高清无码 一区 二区 三区| 这里只有精品免费在线视频| 五月天婷婷社区久久综合| 99国产97在线,| 热99色| 欧美大片免费观看| 人妻AV在线| 综合五月天| 高清无码入口| 精品久久人妻| 丁香在线视频| 狠狠干夜夜干| 99热.com| 大香蕉五月天| 五月综合激情网| 色婷婷综合网| 激情六月婷婷| 欧美色综合天天久久综合精品| 狠狠激情五月天| 婷婷五月综合视频| 丁香五月婷婷激情中文| 久久99久久99精品免观看软件| 无码啪啪| 久久只有这里精品免费| 99,色| 五月丁香婷婷福利| 久久久久久久久久久久久久人妻视频| 激情丁香五月天图片| 激情五月天婷婷色色色色色色色色色色色| 日韩色色视频| 久热免费视频| 97色婷婷| 超碰婷婷五月| 三级99热| 99热在线精品播放| 伊人婷婷五月天| 熟女激情网| 色五月视频无码播放| 五月天婷婷色小说| 色吧五月婷婷| 午夜婷婷久久 | 久久精品国产一区二区三区四区| 超碰三级片| 婷婷五月综合在线| 丁香五月天啪啪| 日本综合99| 色婷婷在线影院| 色吧综合网| 国内婷婷丁香社区在线播放| 这里只有精品视频看看| 五月天色婷婷网| 婷婷综合色图| 精品影院| 99re在线免费视频| 色色丁香婷婷| 天天干-天天日| 五月丁香亚洲综合| 久久99久久99久久99人受| 天天爽夜夜操| 久久久噜噜噜操操操| 激情五月天综合网| 79精品在线视频| 六月丁香激情网| 91精品久久久久久77777| 国产全是老熟女太爽了| 婷婷丁香综合在线| 色999五月色| 五月丁香六月欧美| 丁香婷婷五月色成人网站| www.久久| 亚洲人妻电影| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 亚洲爱爱无码婷婷色五月| 久久激情五月天| 色五月在线观看| 99视频热99| 大香蕉综合| 夜丁香综合| 色色色综合| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 久99热| 丁香五月综合狠狠| 亚洲另类电影| 五月天激情无码| 亚洲激情网| 1024亚洲| 婷婷五月激情欧美大胆视频| 五月丁香激情四射| 国产99久| 六月婷婷五月丁香首页| 五月婷婷六月色| 色狠狠色噜噜AV天堂五区| 99丁香五月婷| 色丁香影院| 久久久久久久人妻| 91大神操美女| 久久视频这里有精品99| 99热这里| 九九久久综合| 日日噜噜夜夜狠狠久久丁香六月| 丁香婷婷五月色成人网站| 丁香情色五月| 亚洲五月天综合色| 51XX午夜影福利| 亚洲9久久精品| 婷婷舔| 思思热精品在线| 国产成人在线不卡AV| 性天天中文网| 中文字幕有多少字| 日日日日做夜夜夜夜无码| 久久久大香蕉| 91九色欧美| 国产三级秋霞| 婷婷丁香综合网| 狠狠 婷婷| 99视频在线精品| 9久久婷婷国产综合精品性色| 夜夜躁狠狠| 99热这里只有精品在线观看| 国产免费一区二区三区三州老师F1F1.CC | 超碰在线超碰| 噜噜色噜噜网| 精品日本视频444| 狠狠色狠狠色综合日日91| 无码免费人妻A片AAA毛片西瓜| 九热视频精品| 婷婷午夜天| 九九激情| 国产婷婷五月色情综合| 五月丁香综合色婷婷| 婷婷玉月丁香五月在线视频| 亚洲精品色| 国产夫妻操逼内射视频| 午夜丁香| 伊人五月天日日夜夜久久久天天| 色99视频| 丁香五月婷婷综合精品素人| 五月六月丁香激情| 果冻传媒A片一二三区| 热久久视频99| 91人妻九色大屁股| 永久地址 色| 日本97在线观看| 婷婷.com| www.久久婷婷| 亚欧州精品视频| www.99婷婷| 成年人丁香五月| 噜综合| 色五月激情五月| 五月天性色| 人人操9| 五月天天爽| 人人操人人爽成人AV| 婷婷射综合| 亚洲婷婷视频| 蜜桃成语时李时珍 免费| 天天碰天天插天天操| 亚洲AV成人一区二区在线观看| 大波美女VA网站| 艳妇野外情欲放荡HD| 人妻尝试久久久久久久久久久久| 午夜丁香婷婷| 婷婷天天综合| 久久五月天丁香| 久久Xx| 日日操夜夜爽白洁| 婷婷五月丁香第四色超碰在线| 青青操avbb| 开心色色五月天综合| 玖玖资源在线视频| 天天色图| 无码少妇高潮喷水A片免费| 日日夜夜爽| 97久久久久| 性做爰A片免费视频A片直播| www99热| 婷婷色播婷婷| 91se视频| 婷婷五月综合久久中文字幕| 丁香六月婷婷综合色| 一区二区无码视频| 狠狠五月激情丁香六月| 一根材五月婷成人| 久久九⑨| 中文字幕在线日亚洲9| 五月色俺婷婷| 亚洲综合1024| 九月婷婷在线视频| 激情综合网五月丁香| 日韩狠狠色婷婷| 操人精品| 99在线精品免费视频| 丁香六月婷婷久久综合| 狠狠草天天草| 99热99草97| 极品少妇高潮啪啪AV无码| 天天狠狠六月婷丁香影院| 99在线精品视频观看免费下载| 亚洲色久| 99热综合| 日日操日日干| 午夜一区| 欧美123区免| 99碰碰| 亚洲精品在线视频| 婷婷五月开心中文字幕在线| 99大香蕉| 婷婷9月天| 色色色图| 中文AV网| 伊人五月网| 天天操夜夜爽天天操| 中文字幕黄色电影网址| 国产欧美熟妇另类久久久| 香蕉婷婷色五月| 综合伊人狠狠| 九九视频精品这里只有| 色色五月天网站| 一片AV片免费播放| 无码AV免费精品一区二区三区| 狠色色狠网| 美女天天久久| 丁香婷色| 69精品无码一区二区三区| 久久综合久色欧美综合狠狠 | 大香蕉五月婷婷| 开心五月婷| 天天免费成年人视频| 一级性感黄色内射视频| 日韩美一级毛卡片| 婷婷视频在线碰| 亚洲乱码日产精品BD| 五月天色社区| 欧美综合123区| 成人色五婷婷| 日本操逼九九九九58日本操逼| 亚洲AV网址| 五月天婷婷丁香花| 综合久久五月| 日本44久久在线| 国产乱妇乱子在线播视频播放网站| 五月丁香婷婷综合网| 五月丁香激情婷婷综合| 狠狠狠人妻| 国产视频久色| 99热久久这里只有精品| 色,激情五月天| 久九色| 91性高潮久久久久久久久| 97色图片中文字幕视频在线观看| 色色激情| 深爱五月天| 久久99网站| 热久久这里只有精品| 丁香五月香蕉| 五月激情婷婷在线| 99热这里只有精品3| 婷婷在线精品| 99热综合| 五月婷婷啪啪| 亚洲激情AV| 99色在线视频| 最近韩国日本免费高清观看| 涩五月婷婷| 亚洲精品白浆高清久久久久久| 超碰免费大香蕉| 九九亚洲综合| 丁香五月婷婷六月| 99精品网| 麻豆AV一区二区三区| 1024亚洲无码| 有码一区二区三区| 九九九九无码| 日本欧美国产| 色色色五月婷婷| 色色色视频| 五月婷婷花| 五月丁香婷婷综合网| 日韩成人AV在线播放| 亚洲综合色婷婷| 亚洲黄色影视| se色婷婷视频| 天堂网色色| 九九99免费视频| 热久久99视频| 五月天激情av| 丁香五月综合激情啪啪| 丁香六月五月天| 少妇人妻丰满做爰XXX| 色综合9| 欧美性爱一区| 在线国产精品色| 五月天激情无码高清 | 内射爽无广熟女亚洲| 婷婷五月综合社区| 婷婷五月情| 婷婷色五月激情| 婷婷色色亚洲| 金品在线视频99| 国在线激情网| 色婷婷在线视频综合| 天天xxxxxx天天日| 99精品在线观看| 五月婷婷成人| 九九久久9 9在线观看| 五月丁香网站| 人妻内射麻豆视频| 久久九九热视频| 五月天婷婷激情在线色图| 高潮毛片又色又爽免费| 久人操| 成人va在线观看视频| 这里只有精品网站| 色婷婷电影网| 婷婷六久久| 久久ww| 婷婷五月激情视频| 久久性爱视频网站| 涩丁香91| 超碰三级秋霞| 夜夜干夜夜操| 99热这里只有精| 任你日热视频| 激情六月五月婷婷综合网| 5五月综合网亚洲| 99色色网| 思思99久久| 久久五月婷天天干| 色色色色色色色色综合网| 婷婷综合玖玖五月| 丁香五月天在线视频| 色婷婷五月天偷拍| 亚洲精品又粗又大又爽A片| 91精品婷婷国产综合| 丁香五月婷婷成人网| 色啪综合| 久久机热探花| 涩涩五| 国产在这里只有精品| 97婷婷五月激情六月丁香伊人| 日韩黄色AV无码| www.人人操人人看人人想人人摸 人人人人操,COM | 五月丁香六月婷综合成人综合| 青柠影视免费高清电视剧| 亚洲精品影视| 五月综合无码| 97精品人人A片免费看| 91久久久久久久久18| 婷婷社区五月天| 色婷婷很很丝袜| 亚洲欧洲色色| 色色网站| 免费亚洲成人电影AV| www色五月天| 五月丁香综合中文| 久久曰曰| 久久五月天网| 99超碰欧美| 97五月天婷婷午夜| 亚洲啪啪视频| 欧美日韩成人高清在线| 丁香五月婷婷色| 久久97久久99久久综合欧美| 五月天日日操夜夜操 | 国产在线网址1| 色亚洲视频| 五月天婷婷激情小说电影| 九九热在线99| 新激情五月天天在线网| 久久五月热| 激情五月天www| 五月天丁香色色| 最新精品视频99| 8090在线影视少妇| 日日噜噜久久婷婷五月天| 大香蕉五月天婷婷| 亚洲艹网| 99热官网| 五月丁香色色综合| 欧洲色色| 涩涩涩,com| 午夜婷婷| 婷婷黄色五月天在线视频| 色婷婷99| 五月丁香六月婷婷不卡免费无码 | 久久天堂女人| 婷婷综合色播网| 4399精品一区二区| 亚州色色色| 色婷婷第四色| 99久久这里只有精品| 成人丁香色| 97人人干| 色色综合日韩|