免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

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
返回資訊列表
综合网精品99| 五月天丁香婷| 日本操逼九九九九58日本操逼| 婷婷丁香十月| 开心婷婷五月天电影院| 国产 码在线成人网站| 超碰国产av| 五月天综合在线观看| 五月丁香亚州综合网| 久久 这里只有精品1| 老师的粉嫩小又紧水又多A片视频 粉嫩AV久久一区二区三区 | 亚洲色9| 丁香六月婷婷久久综合| 天天色天天爽| 丁香五月狠狠在线观看| 天天综合精品| 亚洲五月丁香综合网| 99网| 网站免费一站二站| 婷婷丁香五月天哟啪| www.久久综合| 久久99这里| http://www.com久久久精品一区| 五月婷婷在线免费| 狠狠夜夜五月丁香| 五月婷婷影视| 97操视频| 丁香婷婷六月在线资源观看| 五月天色色色色色| 成人在线精品| 丁香五月婷婷少妇| 四射综合网| 99在线视频资源| 五月婷丁香花| www.色色com| 91凹凸在线| 五月综合色| 欧美人与性动交CCOO| 麻豆123区| 一区二区三区XXXXXX| 久久99综合网| 色五月婷婷天天操夜夜操| 婷婷婷久久| 婷婷中文字幕网| 色婷婷成人| 婷婷激情九月| 五月成人网天天| 日韩精品一区二区亚洲AV观看| 色综合另类| 99热这里都是精品| 天天肏视奸| 丁香五月激情综合| 99热骚货| 婷婷五月天成人网| 99在线播放| 香蕉久久国产AV一区二区| 天天日天天干天天爱| 丁香婷婷久久五月天| 9久久久久久久久久久| 五月丁香日本在线视频观看| 婷婷成人在线| 教师性爱毛片| 伊人久久婷婷| 91久久综合亚洲鲁鲁五月天| 99热精品在线播放| 国内婷婷丁香社区在线播放| 日韩综合久久| 涩涩五月天| 日本久久视频| 五月停停99| 亚洲成人综合在线| 五月丁香综合网| 九九精品这里只有| 五月综合色| 激情婷婷护士激情| 婷婷五月花| 五月婷婷天堂| 五月丁香六月在线| 亚洲综合婷婷六月丁香五月| 色婷婷五月丁香在线观看| 五月婷婷综合影院| 日韩精品VIP| 色婷婷六月| 久热这里只有| 天天碰天天插天天操| 人人摸人人干| 超碰免费人人| 人人操人人干AV| 西瓜美女a片| 337p大胆噜噜噜噜噜91Av| 狠狠狠狠狠狠草| 五月天婷婷操逼视频| 狠狠狠狠操| 色五月天影视| 大香蕉啪啪啪| 国产激情综合| 99色网站| 91在线日| 色久女| 91干在线视频| 狠狠狠狠青草| 色婷婷人人| 国精产品一区一区三区免费视频| 日本婷婷五月天| 六月色播| 人妻九九九九| 狠狠人妻色综合| 99热99这里有免费的精品| 激情五月开心五月在线视频| 色五月情| 国产欧美精品AAAAAA片| 五月丁香六月| 欧美精品XXXXBBBB| BBWCUCKOLD精品熟妇 | 99热欧美精品| 色99xx| 这里只有精品96| 色婷网| 另类专区在线| 狠狠狠狠狠狠狠狠| 色情五月综合婷婷| 色色A| 色999亚洲人成色| 久久艹99| 99无码黄色视频| AV在线免费播放| WWW.17C亚洲精品| 婷婷激情综合| 色一情一乱一乱一区91| 九九热在线视频观看| 99.N在线视频| 五月天色社区| 成人精品视频99在线观看免费 | 综合另类激情| 九九九九中文字幕| 99狠狠| 超碰97在线观看免费| 香蕉久久av一区二区三区| 五月激情天| 大香蕉婷婷| 亚洲AV成人在线| 久久久婷婷婷| 色婷婷性爱网| 99re青青草| 99久久综合狠狠综合久久| 96自拍视频九色在线观看| 99精品成人无码A片观看金桔| 五月婷婷丁香| 熟女色色一区二区| 色婷婷影| 丁香五月天偷拍| 婷婷97狠狠干| 婷婷五月激情视频| 色女人久久| 另类 在线| 婷婷五月丁香综合激情| 99热99色| AV变态另类一区二区| 狠狠色婷婷色| 欧美在线视频99| 99热永久在线观看| 久久思思热视频| 久久99热在线观看| 九月丁香| 超碰A V在线| 奇米影视在线视频| 国产人人操| 激情五月天的婷婷| 新99思思视频| 丰满熟女人妻一区二区三| 九九精品亚洲| 国产毛多水多女人A片| 色色色香蕉五月婷| 99精品在线观看视频| 日韩欧洲亚洲| Va另类视频| 激情伊人五月天| 久婷久婷| 久久A极片| 九九综合88| 欧美激情综合色综合啪啪五月| 丁香婷婷黄网站| 无码一区二区三区四区五区| 成人丁香| 色播五月丁香| 91疯狂操操操操| 99色这里| 婷婷六月激情| AA片在线观看视频在线播放| 日本久久婷婷| 五月天另类小说久久小说网| 夜夜爱网站| 不卡在线超碰| 色五月综合在线| 五月婷婷深深的爱| 欧美综合激情丁香五月六月婷| 久久色情| 91丨人妻丨国产丨丝袜| 色婷婷精品视频在线播放| 9999热在线免费观看| 五月天激情综合网站| 欧美综合婷婷网| www.婷婷.com| 国产性爱大片久久| 丁香五月婷婷久久久| 亚洲综合激情五月| 日韩av手机在线观看| 我去色色网五雨天| 婷婷五月天成人综合网| 婷婷综合网站| 色婷婷69| 99热这里只有精品在线播放| 成人做爰A片免费看视频| 99热欧美偷拍| 啪精品| 五月天亚洲最大成人| 天天艹夜夜艹| 五月婷婷伊| 涩涩婷婷五月| 99er精品视频| 怎么样可以看免费的一级av| 五月欧美色播| 99久在线精品99re8热| 色色9 9| 婷婷亚洲色| 色五月婷婷久久| 99热精品在线观看| 色综合久久久久| 人妻精品久久久久久| 老司机日日夜夜青草| 成人无码中文| 激情久久综合网| 99色干| 1024久婷| 五月婷婷自拍| 99热传媒| 五月丁香拍拍激情综合| 深爱激情五月婷婷| 91碰超| 99视频只有这里精品| 国产乱人偷精品人妻A片| 天堂中文国产| 五月激情综合网| 丁香五月婷婷五月基地| 五月婷婷丁香色播网| 丁香婷婷久久 | 五月丁香激情综合网官网| 色波激情五月天| 婷婷五月天黄色| 婷婷综合九月| 激情小说婷婷| 国产91九色| 五月丁香无码| 91男人资源站| 五月丁香五月婷婷在线观看| 国精产品一区一区三区免费视频| 婷婷色五月天第7色| 91成人看片| 97在线干| 中文色婷婷| 伊人网啪啪| 激情六月天婷婷| 好叼操在线观看| 九九操综合网| 伊人婷婷大香蕉在线| 丁香五月狠狠综合欧美| 五月天婷婷色| 中文字幕丰满乱孑伦无码专区| 亚洲人妻Av| 色香久久| 天天做天天爱天天玩| 九九Y精品热播| 激情五月www| 99在线视频网址在线观看| 天天爽成人综合网站| 97狠狠色| 六月丁香婷婷拍拍| 激情内射人妻1区2区3区| 九九青青草成人| 97操在线视频| 五月在线婷色| 久久婷婷午夜| 五月婷婷亚洲色视频| aaaa.黄| h在线看免费版在线看| 欧美成人日韩| 开心五月婷婷激情| 婷婷五月激情基地| 五月丁香久久激情综合| 五月丁香六月婷婷色情| 九月婷婷久久| 屁股翘好撅高迎合跪趴| 99色热综合| 五月丁香色停停啪啪啪| 亚洲热综合| 久热婷婷在线视频| 日本色道视频网站| 深爱五月天天| 久久资源综合| 日日天天干| 亚洲精品乱码久久久久久综合| 五月天婷婷基地| 六月丁香婷婷天堂| 日韩xx在线| 97色婷婷成人综合在线观看| 亚洲婷婷开心五月| 久久九九经典| 99热综合网| 思思热性操| 久久性爱网| 九九99一区| 91精品久久久久久久久久久久| 涩五月婷婷| 免费色色色| 亚洲激情四射色| www色五月| 六月丁香激情综合网| 欧美69久成人做爰视频| 天天干,天天日| 色色色五月婷婷| 精品亚洲国产成AV人片传媒| 欧美日韩成人一区二区| 五月色丁香国产在线视频| 色婷婷亚洲综合av| 天天人人综合| 亚洲天堂碰碰婷婷| 天天操天天操天天操天天操天天操 | 婷婷五月另类网站| 久久久激情| 先锋av性爱成人电影| 成人在线观看一区| 亚洲妇女熟BBW| 欧美婷婷成人| 99er免费在线观看| 婷婷六月综合| 色色999三级片| 婷婷伊人中文字幕| 国产色色视频| 婷婷爱婷婷| 丁香六月婷婷开心| 亚洲熟妇AV乱码在线观看| 亚洲这里只有精品| 丁香成人综合| 91九色丨国产丨爆乳| 亚洲乱码日产精品BD| 久99热在线观看| 五月四色色| 国产免费AV在线| 久777| 五月丁香色婷婷久久| 丁香五月婷婷亚洲综合精品在线| 伊人婷婷大香蕉| 国产精品99久久久久久久女警| 五月婷婷丁香在线| 色婷婷婷综合五月天| 五月天丁香成人社| 久久99jiu9| 无码色| 久草a片| 久久这里99| www超碰| 色婷婷综合丁香五月天| 激情五月婷婷综合秋霞| 六月色婷婷| 99久热在线精品| 影音先锋91视频| 麻豆五月丁香婷婷| 色黑鬼导航| 午夜成人网站在线观看| 国产九九一区二区三区| 人妻中文av| 91婷婷视频| 国外亚洲成AV人片在线观看| 亚洲欧美婷婷五月色综合| 久久精品99久久久久久| 日日干日日| 丁香五月婷婷色偷偷| 色丁香久综合在线久综合在线观看| 26uuu.| 激情小说五月天社区丁香| 日本啪啪网| 蜜臀av粉嫩av懂色av| 热久久婷婷| 影音先锋男人av资源站| 韩国97天堂| 亚洲精级| 99热高清在线| 日本三级日本三级三级人妇四虎| 六月婷婷激情| 五月婷婷另类| 丁香五月综合色婷婷| 日韩成人网址| 深爱五月激情网| www.激情在线| 五月色欧美| 五月丁香av在线| 丁香伊人激情| 六月婷婷国产| 九九99久久| 五月丁香婷婷基地| 欧美综合123区| 狠狠爱婷婷爱| 九九99久久| 97人人干人人操| 超碰免费在线| 人五月天婷婷喷水| 亚洲视频1区| 久久一品区| 亚洲99在线| 狠狠色丁香| www.超碰| 性色做爰片在线观看WW| 日本美女97在线视频| 97操碰日本女人| 亚洲色五月婷婷| 综合色影院| 丁香激情久久| WWW五月天| 久噜久噜| 丁香五月天婷婷中文字幕| 99玖玖免费视频| 色五月综合在线| 色婷婷五月天| 婷婷综合在线视频| 网色99| 婷婷基地成人五月天| 色婷婷五月综合在线| 99热99热不卡| 国产精品爽爽久久久久久| 五月婷婷综合在线视频小说| 色综合久久中文| 综合久久婷婷| 三年高清大片免费观看国语| 色色影院黄大片| 9久热在线视频精品| 九九热欧美| 丁香五月色播中文在线播放| 久青操| 色色五月天婷婷| 激情丁香五月婷| 综合网五月天123| 五月婷婷啪| 亚洲啪视频| 五月丁香六月婷| 婷婷碰碰| 天天做天天爱天天搞| 伊人婷婷激情| 9热在线观看| 五月丁香六月激情| 亚洲另类AV| 五月天色综合| 五月婷婷婷婷婷| 夜夜操狠狠操| 香蕉久久av一区二区三区| 婷婷成人av| 97干视频在线| 丁香六月爱综合| 极品人妻VideOssS人妻| 五月丁香影视| 婷婷va| 亚洲在线激情婷婷五月| 国产va视频| 久久久性爱视频| 男女激情久久| 美日韩成人| 丁香五月婷婷俺也要去| 五月丁香六月在线| 国精产品一区二区三区| 亚洲人人96@| 激情内射p| 色欲久久综合| 操操日韩| 丁香五月成人论坛| 五月丁香婷婷色色| yw国产AV| 色五月激情问网站| 久操热线| 久久网址99热| 色。 日日日| 五月天激情www| 熟女激情五月天| 亚洲欧美日韩另类| 婷婷亚洲激情在线观看视频| 67194成I人在线观看线路1| 丁香五月欧美婷婷综合| 伊人春天av| 十一月婷婷激情四射| 久久99久久99久久99人受| 日本三日本三级少妇三级66| 丁香六月毛片| 夜夜撸日日操| 啪啪婷婷五月天激情| 丁香婷婷成人在线播放| 丁香五月社区| www色色色com| 婷婷五月天av| 五月天堂色色| 亚洲、热| 99热精品在线观看| 综合激情五月四射婷婷| 五月婷婷色综图片| 亚洲av成人电影在线观看| 五月丁香婷中文字幕| 26uuu精品一区二区| enecarbon-materials.com污K127封锁请涟系@wip1688 | 婷婷五月激情欧美| 亚洲av网址| 99热精这里只有精品| 婷婷五月六月丁香| 丁香五月色色| h亚洲| 久久久久久久久久婷婷| 婷婷色情小说| 黄色中文字目| 亚洲精| 人妻久久久| 日韩综合久久| 影音先锋一区二区三区| 超碰高清在线| 这里只有精彩视频| 丁香五婷| 开心激情综合| 亚洲成片在线观看| 婷婷六月色播| 五月天婷婷青青草| 五月天婷婷深深爱| 久99999热视频在线观看免费| jiujiu无码五区| 噜噜视频| 欧美极品999| 97人人草| 成人五月天婷婷| 一级性爱视频| 99热99思午夜精品| 欧美性猛交AAAA片黑人 | 99在线观看视频免费| 激情第四色| 精品五月视频婷婷在线观看| 这里只有精品视频99| 亚洲高清在线| 99在线观看精品视频| 综合啪啪| 五月丁香| 五月婷婷综合色啪首页| 欧美婷婷色| 久热精品视频| 久久九九九九| 激情綜合網址| 亚洲永久四色| 啪啪一区| 三级成人网站| 九月婷婷激情久久| 亚洲操精品| 丁香花五月天激情| 国产99美少妇| 国产欧美性成人精品午夜| 婷婷色系婷色| 99ri6在线视频| 狠狠色综合网站久久久久| 色色综合院| 日熟女| 久草 天堂| 亚洲精品99| 森林影视大全,最好看的2019年视频 | 5月婷婷视频网站综合| 丁香九月激情| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 婷婷五月伦理| 視频福利乱色| www久久99| 五月丁香六月色婷| 91在线视频观看午夜福利| 亚洲色在线观看| 丁香婷婷色情| 激情网五月天| 91精品国产综合久久密臀 | 亚洲欧美国产高清vA在线播放| 久草九九| www,天天干| 六月丁香深深爱| 第1影院之五月婷婷| 久久总和99| 激情五月天婷婷免费观看| 99操碰| 色婷婷五月天堂资源| 五月天婷婷丁香人人操91| 狼人婷婷久久| 欧美噜一噜| 99日本视频| 女人被男人吃奶到高潮| 色小说婷婷五月天天天| 婷婷久久色| 国产99热| 婷婷五月伦理| 欧美精品99久久久| 黄色av网站在线免费播放| 99爱视频| 天天插夜夜爽| 久久精品婷婷五月丁香| 天天插天天爽| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 9久热精品在线视频| 色亭亭五月天丁香综合AV - 百度 - 百度| 99婷婷五月天| 久热爱大香蕉在线蜜臀悦色| www.91色| 大香蕉99热| 丁香综合伊人AV| 久久9RE热视频精品98| 伊人综合网站| 在线观看免费狠狠色丁香香综合| 91艹人| 伊人九九综合| 免费无码毛片一区二区A片| 婷婷五月六月| 六月五月久久丁香| 久久免费9| 色色五月婷婷狠狠| 9久久精品| 亚洲激情网| 色噜噜狠狠色综合无码久久欧美| 亚洲成人av在线观看| 日韩aaaaa| 99热综合| 国产精品久久久久久五月天加勒比| 任你搞网站| 婷婷五月成人社区| 丁香六月综合激情| 九月丁香婷婷综合| 色五月婷婷亚洲最大| 久久996re热这里只有精品无码| 六月婷婷七月丁香| 五月久久| 性按摩玩人妻HD中文字幕| 午夜激情婷婷| 激情综合网五月婷婷| 国产六月婷婷| 狠狠色丁香久久久婷| 玖玖婷婷五月| 九九九九中文字幕| 一级片无码| 天天做天天爱天天爽| 五月丁香久人妻中文| 激情五月天电影| www.狠狠操.con| 99自拍视频| 国产精品成人AV在线| 日本久碰| 伊人热在线大香蕉| 日韩精品AV一区二区三区| 超碰高清在线| 五月丁香六月综合基地| 亚洲激情精品| 丁香五月亚洲婷婷| WWW、日本色丁香、co m| 天天天天天天天干| 婷婷五月天综合激情| 91色在线/日韩| 色五月大香蕉婷婷| 99热69| 亚洲视频1区| 久草婷婷在线| 日韩av免费版| 91午夜婷婷狠狠久久综合9色| 亚洲亚洲人成综合网络| 五月综合激情网| 五月婷婷片| 色久天| 久热成人| 67194成I人在线观看线路1| 97人人看| 成人婷婷| 婷婷五月丁香基地| 九九这里都是精品| 五月亭亭直播| 国产av天堂| 狠狠色色| 乱乱av| 天天肏在线| 国产欧美日韩综合精品一区二区| 国产欧美性成人精品午夜| 中文字幕人妻熟女在线| 99精品成人无码A片观看金桔| 色五月激情五月| 国外亚洲成AV人片在线观看| 91无码一区人妻A片蜜| 91 影音先锋| 丁香五月婷婷综合啪啪| 9久热在线视频| 婷婷丁香五月天操逼| 精品视频网| 热99在线精品| 五月激情综合网| 全部老头和老太XXXXX| 久久精品99国产精品日本| 色综色网| 久久五月天激情婷婷| 久久99精品久久久久久噜噜| 欧洲亚洲免费视频9| 激情综合久久| 天堂AV三级| 久久久久久草黄色片AV在线观看| 五月婷婷co.m| 79色色| 六月丁香网| 欧美色色色| 亚洲无码99| 五月婷婷视频| 91精品又长又大又粗又爽又猛| 久久超级碰碰| 日韩狠狠色婷婷| 日韩综合大黄| 能看的AV| 99视频内射三四| 开心色色五月天综合| 在线99精品| 婷婷五月天影院| site:jszngf.com| 深爱五月日韩| 五月婷婷与六月丁香图片激情| 天天综合精品| 亚洲色99综合天堂| 九九大香视频| 六月婷五月丁香| 中文乱子伦视频| 操91| 色婷婷中文| 99色日本| 深爱五月天婷综合| 五月婷婷官网色| 思思热在线| 丁香六月婷婷操逼网| 99熟女啪啪视频| AV天堂淫乩| 激情五月天开心总和网| www.婷婷五月| 色婷婷狠狠18yy| 色婷婷综合在线| 激情桃色网 | 99精品小视频| 国产激情综合五月久久| 97久久超视频| 天天操夜夜啊| 婷婷综合在线| 国外亚洲成AV人片在线观看| 我想看国产大学生口爆吞精的视频| 日本色道视频网站| 91wwmm导航| 99热精品在线观看| 激情五月天福利| 丁香婷婷久久 | 99性爱视频| 色色色色色五月| 色五月无码| 久久激情天堂| 激情文学综合婷婷五月天丁香花| 92久久| 99精品在线下载| 丁香婷婷影院| 狠狠色 综合色区| 色综合色五月| 操操操Av| 国内一级片| 丁香五月婷婷六月婷婷| 国产婷婷五月在线视频| 婷婷永久在线| 69精品无码一区二区三区| 第四色色六月色综合| 香焦网五月天| 婷婷五月天免费99| 天天日夜夜B久久| 五月天丁香| 九九九九九九热| 五月丁香激情综合啪| 成人在线99| 亚洲AV久久久久久久久久久久久久久久| 九九激情网| 色欧美影院| chaopeng在线人人| 99热20| 99久久9| 永久热91| 九九99一区| 99色在线| 久去色色| 网色99| 激情婷| 99re这里只有精品视频了| 日韩免费视频| 一级性感毛片| 久热这里| 久九色| 九九干视频| 亚洲综合在线网站| 日韩乱玛久久| 成人五月天综合网| 激情婷婷丁香色五月综合| 色色五月丁香| 色婷五月天| 色婷婷五月综合在线| 久久久五月天网站| 夜夜骑天天玩天天日| 玖玖99婷婷| 婷婷 亚洲图片 丁香| 日韩色五月| 无码橾| 成人精品亚洲性爱| 91大神在线免费看视频全集男男一起操| 五月激情偷拍婷婷| 97在线观看| 五月天婷婷自拍图片在线观看| 日日日日日| 毛片网站谁有| 五月婷婷婷| 五月丁香久久精品在线观看 | 五月狠狠| 天天色99| 色综合中文| 99九九视频| 丁香五月色网| 香蕉久久国产av一区二区| 99热资源在线| 丁乡久久| 黄色三级日本| 色色操| 99热免费观看| 婷婷色无码| 国外亚洲成AV人片在线观看| 天天干天天操天天干天天操天天干天天操 | 99热精品在线播放| 婷婷丁香五| 国产精品久久久久久亚洲毛片| 久久婷婷六月综合资源| 人妻丰满精品一区二区A片| 欧美综合婷婷网| 五月J香蕉婷婷| 五月婷丁香亚洲| 殴美97色| 午夜成人综合| 久久99婷婷| 99热99色| 婷婷丁香五月,狠狠综合| 香港九九六区八区99| 色爱亚洲| 影音先锋91| 99免费热视频在线| 激情综合五月色在线| 99综合五月免费视频色婷婷| 色五月综合激情| 九九婷婷五月天| 操人妻视频91| 伊人婷婷综合| 综合色色网| 五月婷婷六月奇米网丁香| 五月婷婷丁香大香蕉| 另类视频五月天| 在线中文字幕视频| 任你爽视频| 开心五月婷婷在线视频免费观看| 4438全国最大视频成人网站在线观看| 5月婷婷6月六月丁香| 99ri在线观看视频| 日本乱子人伦在线视频| 五月丁香婷婷成人综合网| 97碰成超视频免费视频| 狠狠搞狠狠操| 激情五月六月丁香| 欧美婷婷丁香社区在线播放| 五月婷婷六月丁香五月| 欧美一级色| 激情涩播| 性爱视频久久| 色婷婷成人丁香| 久久看九九90| 亚洲成人网在线观看| 99 频99热国里只有精品| 91久久18| 中文字幕在线日亚洲9| 99热日本| 色香久久| 中字幕视频在线永久在线观看免费| 婷婷激情五月天在线| 日本婷久久| 国自产拍偷拍精品啪啪一区二区 | 丁香久久| 婷婷色女| 99久久久精品| 久久久久久人妻| 日本五月视频| 五月激情啪啪| 97人人妻人人艹| 色色激情五月天| 伊人狠狠干| 开心五月婷婷激情| 国产操B| 99欧州偷拍视频| 久久A热| 丁香六月婷婷综合欧美| 97操操网| 97色婷婷成人综合在线观看| 婷婷开心激情综合五月天| 99日逼视频| 亚州男人天堂婷婷五月| 97在线视频人妻九色| 97好吊操| 操操操操操操婷婷五月天| 九九九九九九九九九九九九九国产精品| 欧美日韩91| 99操逼| 99爱在线| 日本一道久久| 操逼综合激情网| 五月天婷婷色| 五月天操逼网| 丁香五月激情啪啪| 丁香婷婷综合五月天| 97人人搞| 免费日本aⅴ中文字幕| 日日干日日| 99性爱视频| 天天色官网| 国产99美少妇| 超碰色色综合| 99综合入口| 亚洲国产精品VA在线看黑人| 婷婷性爱网| 婷婷五月激情丁香| 国产精品-第3页-91JQ就要激情网91JQ5.JQJQ926.XYZ| 99九九玖玖| 最新婷婷五月丁香| 嫩草AV久久伊人妇女超级A| 欧美97色| 亚洲午夜一区二区| 五月天三级| 91久久久久久久| 99热天堂| 日韩性爱无码| 婷婷伊人综合| 国产精品日本一区二区在线播放| 色五月人妻| 色婷婷精品视频| 丁香六月成人| 亚洲九九在线| 天色综合网站| 五月6香色婷婷视频| 大香蕉天堂| 久久五月天激情婷婷| 182.t午在线观看| 国产真人做爰视频免费| 激情丁香五月| 久99视频| 欧美精品啪啪| 激情五月久久| 狠狠高潮精品亚洲1| 亚洲第一视频 久久| 丁香婷婷五月六月天| 丁香六月婷婷综合激情欧美| 丁香五月天堂| 91视频精品99| 超碰二区| 五月天婷婷狠狠| 第四色网婷婷| 91精品丝袜久久久久久久久粉嫩| 久久99激情五月天| 六六久久黄色| 91色性感五月婷婷丁香| 丁香五月天大香蕉啪啪| 午夜无码熟熟妇丰满人妻 | 五月天亭亭俺也| 五月丁香婷婷久久| 婷婷综合五月| 青青草原伊人网| 99性爱| 91丁香五月| 免费国产视频| 大香蕉婷婷色| 色播婷婷五月天| 久久丁香| 狠狠的日| 国产成人综合网| 丁香五月性| 五月天婷婷综合网| 久操热线| 99热久久这里只有精品| 色99在线| 538在线精品| 五月婷婷色| 夜夜爽77777妓女免费下载| 久久人妻少妇嫩草AV| 黄色热99| 丁香六月亚洲| www一起操在线观看| 五月丁香六月婷婷成人| 久天综合| 伊人五月天男人的天堂在线| 狠狠狠狠狠狠色| 丁香五月电影| 丁香五月第九色| 26uuu欧美亚洲日韩| 六月婷婷久久大全| 丁香五月六月综合激情| 亚洲视频二区| 久机视频这只有精品| 影音先锋女人AA鲁色资源| 大战熟女丰满人妻AV| 激情电影五月婷婷| 亚洲成人在线电影网站| 少妇婷婷五月天| 91热99| 99久久丝| 久久婷婷五月天激情唯美| 婷婷五月天激情在线| 色色色婷婷| 色色色999| 狠狠精品干练久久久无码中文字幕| 久操欧美在线观看97| 97色视频网| 六月激情婷婷综合| 亚洲高清在线| 丁香五月婷婷激情123| 激情六月一二| 婷婷色网站| 久久精彩视频| 五月天婷婷激情四射综合| 欧美日韩国产伦精品日韩人妻一| 欧美天天草人人草| 五月花亭亭| 色播播五月天| 亚洲爆乳无码精品AAA片蜜桃| 大香蕉AV电影在线| 欧美三级黄色片久久| 婷婷丁香六月五月天| 日韩99色99| 久久婷婷五月天懂色| 免费做A爰片77777| 91视频精品99| 99精品无码| 狠狠色噜噜色狠狠狠综合色 | 亚洲亚洲人成综合网络| 亲子乱AV-区二区三区| 中文字幕在线不卡| 亚洲色婷婷激情| 五月丁香五月婷婷| 亚洲激情婷婷| 久久爱综合| 久久婷婷成人视频| 婷婷.com| 综合久| 操比激情五月| 色婷婷色五月另类综合| 噜噜久| 五月天成人在线视频网站| 欧美人人草草| 久久久com| 六月婷婷久久大全| 大香蕉啪啪啪| 97在线视频 欧美| 99久久免费性爱视频`| 天天久综合| 1000部毛片A片免费观看| 天天艹| 婷婷天天插天天爱| 夜夜操狠狠操| 婷婷丁香综合网| 色婷| 99热这里只有精品18| 五月丁香色色网| 丁香视频| 婷婷九月丁香久久| 日日夜夜狠狠| www.wuyuetian啪啪| 色婷婷综合网| 99热这里只有精品86| WWW.国产| 96精品久久久久久久久| 开心五月深爱五月丁香五月激情五月| 亚洲无码99| 久久99久久久| 99视频精品全部免费观看| 成人网站在线观看视频| 欧美婷婷综合| 丁香六月爱综合| 天天狠天天叉| 成人av观看| 五月婷婷丁香在线视频| 超碰成人免费| 99在线播放视频| 激情五月天小说| 日韩在线看AV| 天天爽在线视频| 激情AV在线| 中文字幕婷婷在线| Va另类视频| 99在线观看| 丁香五月天黄色片| 五月天激情网站| 超级碰碰一区| 色情五月天首页| 久99视频| 亚洲激情网| 秋霞AV淫| 97日本在线| 日本色色视频| 一区二区三区四日本| 99亚洲综合| 天天操天天干天天日| 中文字幕精品在线观看| 五月六月婷| 精品热九九| 狠狠干青青草| 第四色在线观看| 狠狠综合| 成人片在线播放| www.久久色.com| 五月丁香六月婷婷玖玖| 亚洲日韩一页精品发布| 五月天综合网| 九九久久精品| 级情九色| 香蕉综合在线| 久久色婷婷| 亚洲成人五月天| 九九热青青草| www.99热这里只有精品| 丁香五月天堂婷婷| 米奇影视五月天| 色五月丁香五| 婷婷五月天激情小说网站| 少妇2做爰HD韩国电影| 激情六月丁香综合| 91九九| 色婷婷丁香五月观看| 九九黄色网| 天天拍天天做视频| 亚洲情综合五月天| 五月丁香WWW| 精品欧美一区二区三区久久久| 99热这里是精品| 色99在线观看| 九九热这里精品| 色婷婷丁香五月| 久操b网| 色综合色色| WWW.桔色成人.COM入口| 97精品人人A片免费看| 婷婷五月天无码视频| 草草夜夜操| 久久婷婷在线| 丁香五月婷婷www..com| 婷婷成人视频| www.97干视频| 91九色在线| 色八月婷婷| 天天干天天干天天干| 五月婷婷深爱六月| 人人综合色| 九九婷婷网五月天| 激情四射婷婷色色色| 综合九九| 久操干| 婷婷六月丁香五月| 激情五月天综合网站网站网站| 大地9中文在线观看免费高清| www.夜夜操.com| 色婷婷激情| 91精产品自偷自偷综合| 成人一级片| 久草婷婷| 欧美精品在线观看| 夜夜骑天天玩天天日| 2021日韩无码| 九九AV在线| 日日日,com| 色涩视频久久| 狠狠狠狠狠干| 色色丁香五月天| 国产超碰在线| 99综合免费视频| 欧美日韩成人在线观看| 天天日日夜夜| 中文字幕日韩无码制服诱或| 婷婷五月综合免费在线| 啪啪婷婷五月天激情| 久久亚洲婷婷综合色五月| 日本三级99人妇网站| www激情五月天| 婷婷丁香激情综合色情| 99网| 久久久精品色| 99日本精品视频热| 99网| 亚洲色五月天| 久久久久久久丁香五月天婷婷| 99在线精品免费视频| 99色亚洲| 六月婷婷天天操夜夜爽视频| 欧美内射AAAAAAXXXXX| 婷婷丁香五月亚洲17cao| 看婷婷五月天网| 日韩av手机在线观看| 99精品视频网| 色五月涩涩婷婷蜜桃| 天堂二区| 啪啪激情网| 亚洲综合婷婷五月| 香蕉大综综综合久久| 色99在线| 天天做夜夜爽| jiqingtaose五月天| 五月丁香亭亭A片| 九九热免费| Www.狠狠| 婷婷五月天激情四射| 色99xx| 色无码| 激情五月影院| 国产寻花在线| 五月婷婷激情日本| 免费看欧美成人A片无码 | 婷婷丁香成人色综合| 婷婷九月激情| 99久久精品视频女神1| 亚洲综合色色| 69凹凸成人综合网| 婷婷五月天综合网| 色五XX| 99色色网站| 婷婷情色五月| 五月婷婷六月丁香| 桃色五月天| 五月丁婷婷| 99无码视频| 亚洲AV另类| 嫩草AV久久伊人妇女超级A| 无码动漫av| AAA亚洲AV| 99re在线观看| 九月丁香八月婷婷久久综合久97| 国产特级毛片AAAAAAA高清| 丁香五月开心亚洲| 五月婷婷综合色啪首页| 99超级碰免费视频| 久热婷婷在线视频| 嫩BBB搡BBBB榛BBBB| 91一起艹| 五月六月伦理| 夜夜www| 国产日产成人亚洲欧美国产VA| 九九热91| 91操黄| 婷婷综合激情| 日韩成人av在线| 色婷婷电影网| 开心五月丁香啪| Xx色综合| 久久九九网| 综合色影院| 天天肏视奸| 青青草免费公开视频| 九九热99热| 婷婷欧美综合| 免费不卡狠操美女视频网| 九九爱看亚洲| 久er7久热| 在线观看熟女少妇| 玖玖婷婷综合|