[問題] selenium頁數未更新及重複筆數

作者: liquidbox (樹枝擺擺)   2019-02-19 20:05:28
想請教一些問題,我想用Selenium抓小米官網的經銷商,
希望抓完後,用裡頭的資料做成地圖
爬取過程中卻不時出現StaleElementReferenceException,出現頁數不定,
快的話第2頁出現,幸運的話40、50頁後出現,
我猜可能是元素載入不完全,於是想等「下一頁」元素可以點選後再執行後面的動作,
甚至我把WebDriverWait的delay值設為200
問題一:我設的WebDriverWait().until()似乎沒有發揮作用
我以例外處理方式把無法正常爬取的頁數print出來,
這個例外處理很粗糙,但如果不使用例外處理,
程式只要遇到StaleElementReferenceException就會中斷,
而我發現,我print出來的無法正常處理的頁數有數百頁
實際用Excel分析重複筆數後發現,
我抓到的很多變數address根本重複,甚至可以重複數十筆
問題二:我搞不太懂哪個動作讓我抓到了重複的資料
難道是頁面未更新、導致定位出來的元素仍是上個網頁的資料嗎?
還是說我遇到反爬了?
這整個程式我自己覺得好像沒什麼問題,但過程中還蠻跌跌撞撞的
因為我的程式碼會超過批踢踢的畫面長度,造成閱讀不便跟理解困難
所以我放在雲端連結,若這樣做反而讓大家更不方便在此道歉
https://1drv.ms/t/s!AuQERVaW1DVCgv8sqCcfl9FkaayNGg
作者: s860134 (s860134)   2019-02-19 20:39:00
問題在例外處理 當發生時你的動作是什麼?而你想怎麼處理
作者: rexyeah (ccccccc)   2019-02-19 21:19:00
selenium太慢了 我看他request url是有規則
作者: utap2001 (尋找一個漫長的答案 )   2019-02-25 19:06:00
我最近用selenium也是出現很多錯誤,比如說index out of range,用到真的很想翻桌很多網頁的元素都抓不到,不知道driver有什麽問題

Links booklink

Contact Us: admin [ a t ] ucptt.com