作者aidansky0989 (alta)
看板Python
標題[問題] 爬蟲資料返回虛假資料
時間Wed Apr 29 22:02:41 2020
最近練習爬資料時,
在爬蝦皮發現返回的資料量很少且
爬到100筆左右數據以後會返回虛假
資料。
嘗試過消除瀏覽器cookie:
1.模擬常人訪問時間
import time
import random
time. sleep(random.randint(1,9))
2.固定狀態更新cookies, 用requests. cookies. get_dict(),觀察發現更新後的cookie
跟我定義的cookie字典不同,在想是否有session Id留在蝦皮伺服器記錄session
import requests
session=requests.session()
params={}
cookie_dict={}
headers={}
session. cookies. update(cookie_dict)
session. get(url,cookies=cookie_dict,
params=params,headers=headers)
3.proxies={"http":"代理ip","https":"代理ip"}
請求頭加入proxies=proxies
1,2試過無效,3每次用都404斷線,想請問版上高手的建議,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.217.186.75 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1588168963.A.0CB.html
1F:推 vi000246: 什麼叫虛假資料? 感覺是有限制ip請求上限 04/29 22:48
2F:→ aidansky0989: 遇到的問題是1.預計爬20頁資料,實際只爬出2-3頁的 04/29 23:30
3F:→ aidansky0989: 資料量2.約第100筆以後的資料是投毒返回,價格返回 04/29 23:30
4F:→ aidansky0989: 亂數,店家地址只返回第一個字,圖片網址亂碼。前10 04/29 23:30
5F:→ aidansky0989: 0筆搜尋驗證過資料數值都正確 04/29 23:30
6F:→ aidansky0989: 過一段時間再爬又可以爬出約100筆正確資料,推測可 04/29 23:36
7F:→ aidansky0989: 能是cookies時效已過被清除。電腦試過改用代理IP, 04/29 23:36
8F:→ aidansky0989: 換過多個代理IP都無法連線 04/29 23:36
9F:→ wsybu: 有試過設定User-Agent? 04/30 14:05
10F:→ aidansky0989: user-agent有設,放在headers 04/30 17:44
11F:推 pandajohn: 幫推一個 我也好奇後續解法 04/30 22:13
12F:推 s860134: 可以給個網址範例讓大家試試? 05/01 11:58
13F:→ s860134: cookie 會一直變很正常的,因為 response 有 set-cookie 05/01 12:43
14F:→ s860134: requests 模擬瀏覽器行為當然會把 cookie 進行更新 05/01 12:44
15F:→ s860134: 如果你是爬搜尋頁面,他要求 header "referer" 正確 05/01 13:10