→ starcaspar: 考慮用requests嗎?06/03 22:43
→ starcaspar: 原因是這樣的,他的window是由js產生出來的,沒有sour06/03 22:45
→ starcaspar: ce code06/03 22:45
→ starcaspar: 所以Page Source抓到空06/03 22:45
→ starcaspar: 用Burp找到了POST方法,放在上面那個連結,參數可以依06/03 22:48
→ starcaspar: 據你要的去調整06/03 22:48
謝謝!因為要動態展示怎麼爬網站的,所以暫時還需要用Selenium
但是js產生出來的視窗真的沒有辦法取得內容嗎,我看webdriver可以取得js產生的
alert text,但是我試過好像也不是alert。
※ 編輯: ntumath (140.112.253.33), 06/04/2017 19:38:59
→ wennie0433: 你想要把source code全部秀出來? 還是抓某個欄位06/06 01:19
→ wennie0433: 可以的話 想看一下你的error log06/06 01:35
→ wennie0433: 因為我試過是可以把source code秀出來的06/06 01:36
Ok 晚點我可能會在重發一篇
推 swds: sleep的秒數可能要設久一點,讓它source code都下載完06/06 09:32
→ starcaspar: 不不,那不是時間問題06/06 11:02
→ starcaspar: 正如我上面說的,他是js產生的,他有render之後的code06/06 11:02
→ starcaspar: ,但沒有source code,所以你chrome可以按「檢查」,06/06 11:02
→ starcaspar: 但是不能按「檢視原始碼」06/06 11:02
→ starcaspar: 因此selenium的page source在這時候是拿不到東西的06/06 11:04
謝謝starcaspar的解釋,所以Selenium對於網頁用js展示出來的視窗是無法處理嗎? 如果
這樣那我也只好回到requests了
※ 編輯: ntumath (140.112.25.105), 06/06/2017 11:23:25
※ 編輯: ntumath (140.112.25.105), 06/06/2017 11:25:20
→ starcaspar: 不不,只是我還沒找到方法而已 06/06 12:05
→ wennie0433: 你可以改用Firefox, chrome確實不行 try it 06/06 17:26
→ s860134: 實際上是有原始碼的XD 可以嘗試他還在載入的時候按F12 06/07 22:55
→ s860134: 你會看到很明確的 chrome 的開發者工具是有抓到的... 06/07 22:55
→ s860134: 感覺這個是個 webdriver 的 bug ,看要不要發個 issue 06/07 22:58
→ starcaspar: 這個bug應該不是只是driver喔 06/07 23:23
→ starcaspar: 你有對網頁右鍵檢視原始碼嗎? 06/07 23:23
→ starcaspar: 切到window之後很多函數都卡住了 06/08 11:06
→ starcaspar: 你介意覆寫他的openWindow函數嗎 06/08 11:06
→ starcaspar: 你注意看,其實你要的東西都在那個函數產生的 06/08 11:06
→ starcaspar: 如果用execute_script去覆寫或是另外執行這樣去取得資 06/08 11:06
→ starcaspar: 料 06/08 11:06
→ starcaspar: 另外其實我個人覺得selenium作用來測試,雖然他也是可 06/08 11:06
→ starcaspar: 以作為爬蟲的目的啦 06/08 11:06
→ starcaspar: 不然換個driver跑,或許還比較快解決 06/08 11:07
→ rdman: 照你所說,你有試過直接抓跳出視窗裡面元件的XPath嗎? 07/13 15:13