講師回答 / Peter
一般來說curl下載下來的內容關注的是數據,而html的解析放到瀏覽器里面對齊很有可能是不同的,因為css也會影響頁面布局,不同的瀏覽器也會有不同。但是,顯示在頁面上面的數據應該是沒問題的。
2014-08-29
講師回答 / Peter
只能夠單獨抓取,這個是硬傷。比如頁面當中的數據如果是通過Ajax來動態獲取的話,curl也是無法拿到這些動態數據的。這兩點應該說是curl的使用限制。對于你這個情況,如果能夠知道這個frame的url,那么直接抓取它也許就能夠幫助你解決這個問題了。如果完整數據是合并起來的,也就是一部分數據在當前頁面,一部分在frame里面。那么就只能先抓取當前頁面,然后解析當前頁面的html,找到這個frame的src,然后再次抓取這個frame的page,最后把兩個頁面的數據合并起來。
2014-08-17
講師回答 / Peter
后面加/user/login是因為這個地址是登錄的地址,我們發送登錄請求是發送到這個地址的。POST數據只能通過讀取網頁中附帶的JS代碼得到,因為已經超出本課程的范圍,所以沒有展開。
2014-08-09
講師回答 / Peter
一次只能下載一個文件,但是可以通過代碼的方式下載一整個目錄,帶上發送下載指令還是一個文件一個文件下的。比如,我們知道有一個目錄,里面有N個文件,那么用PHP可以寫一個循環把這N個文件下載下來。
2014-08-09
講師回答 / Peter
您指的是哪些數據呢?只要下載下來的網頁看到了必須登錄才能看到的數據,那么可以肯定登錄下載都是正確的。如果有一些數據沒有下載到,可以看看是什么數據。實質上我們下載的是html的代碼,但是如果有一些數據是通過JS動態載入的,那么curl對于這些動態載入的資源是無法下載到的。
2014-08-09