Python 板


LINE

各位大大安 最近在練習爬電商網站的商品資訊 目標網站是yahoo, pchome, momo 現在我已經可以爬yahoo跟pchome 最近在爬momo 發現momo好像有做反爬 試了好幾天 一直爬不下來 說明我試過的方法 ____________________________________________ 從network那裡試著找有沒有api可以發request → 發現是用 post 的方式,帶params跟form_data params有兩個 n 跟 t n = 2002、2018 等等,先假設這個值固定 t 是utc+8 int 時間戳記 (ex:1546461729893) 之後encode utf-8 再貼在 url + "?" + 後面 form_data 直接照著發 然後 header的部分也有加 user-agent 試過用 requests.post 跟urllib.request.urlopen(request, data=form_data) 可是抓回來的都是一堆空白跟換行 沒辦法抓到json資料 不知是我有遺漏的地方 還是momo自己有做一些反爬機制讓bot抓不到資料 ____________________ 於是嘗試第二種方式 webDriver 因為我是在雲端linux ubuntu 16.04上面跑爬蟲 所以環境設定的部分其實不太會用 盡力使用了selenium + firefox + geckodriver 卻發現當我把目標網址丟進某個list裡面foreach去跑driver.get(url) 迴圈跑個兩三次就停住了 不斷修改測試後仍然失敗 現在連要發request去抓準備丟進list裡面的url都直接Message: connection refused 程式碼大概像這樣:: options = Options() options.headless = True options.set_capability("marionette", False) driver = webdriver.Firefox(options=options, executable_path='/home/ubuntu/geckodriver') driver.set_page_load_timeout(20) driver.set_script_timeout(20) i = 1 for url in web_drive_urls: str = "https://www.momoshop.com.tw" + url print(str) driver.get(str) #time.sleep(5) print(i) i+=1 不知是否有好方法能成功爬取momo的商品資料? 理想上我希望可以用第一種方式直接得到json 不然就只好暫時放棄爬momo 謝謝大大們指點 補上我想抓的商品頁範例: https://www.momoshop.com.tw/category/DgrpCategory.jsp?d_code=1106700047 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.246.168.39
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1546463785.A.6C8.html ※ 編輯: rodyforeter (27.246.168.39), 01/03/2019 05:44:52
1F:推 HenryLiKing: 你是不是接了 某個 Case XD 01/03 07:30
2F:推 jasonfghx: WOW 01/03 08:18
3F:→ rodyforeter: 我這一看就超新手啊 1F太看得起我了XD 01/03 12:42
4F:推 jasonfghx: 你要做什麼功能要不要說說看 我試試我的 01/03 14:25
5F:推 vi000246: 用fiddler看看他傳出去的封包跟你發送的有沒有差別 01/03 16:16
6F:→ rodyforeter: 抓一些商品資訊 01/04 10:28
7F:→ rodyforeter: fiddler抓https好像要另外設定 但我後來發現在robots 01/04 10:29
8F:→ rodyforeter: .txt 裡面disallow對內部api的爬取 01/04 10:30
9F:→ rodyforeter: 所以現在應該會改為用web driver 雖然很慢又不穩.. 01/04 10:31
10F:→ rodyforeter: 謝謝提供使用fiddler的方式抓封包 01/04 10:43
https://imgur.com/a/24OpIDl 遇到這個問題 selenium.common.exceptions.WebDriverException: Message: Failed to decode response from marionette Code https://imgur.com/a/yyRXPg4 ※ 編輯: rodyforeter (36.229.82.253), 01/04/2019 11:22:38
11F:→ jasonfghx: 不用github表達? 01/04 17:39
12F:推 Neisseria: 可以用 GitHub Gist 01/04 17:54







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP