關於攜程酒店的爬蟲,網上有很多,我仔細看了下,大概的分成了兩派:selenuim與python執行JS,夾生飯大佬在知乎的專欄中也講述的很清楚了,我不想再復刻他的文章了,而且我在github中也找到了開源項目針對攜程酒店的,鏈接點擊這里,我在復現夾生飯大佬代碼的過程中始終有一段代碼沒找到
callback = """ var callback = function() { for (var t = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"], o = "CAS", n = 0; n < 15; n++) { var i = Math.ceil(51 * Math.random()); o += t[i] } return o }; """
在網上別人展示出來的代碼中也沒有取講解這個函數是在那找到的。不過就像夾生飯大佬說的一樣,獲取到數據才是關鍵!
點評一下復現的過程,處理JS真的是一個需要經驗的活,還不懂這一塊,就需要花時間去補。以后會更多的爬類似的網站,自己也希望出類似的教程!