今天按照慕課的代碼寫了一個淘寶的比價爬蟲,但一直顯示不出來,用lpdb來debug,發現似乎是在獲取網頁html時就出錯了。
然后在討論區發現了原來是要修改user-agent和cookie【headers參數添加字典】
用chorme好像比用火狐更容易找到這些信息,以后還是改用chorme好了
先登錄自己的淘寶賬戶(不然哪來的登錄cookie),之前對cookie完全不了解然后鬧了烏龍,按照討論區的方法根本找不到cookie,結果百度了方法,在瀏覽器地址名直接寫javascript:alert(document.cookie),發現通過這種方法獲得的cookie不能用,但也算學到一個新方法了。
正確的方法是在network下的doc中隨便選一個文件,記得勾選hide data urls,然后右邊就能找到cookie和user-agent,復制粘貼就行了。
第一次寫這樣完整的爬蟲,總結下來就是首先確定整個爬蟲應該由哪幾個部分構成。一個main函數用來整合各個函數,一個獲取html的函數,一個解析網頁的函數(使用re正則表達式挖出想要的內容,內容的鍵可以通過查看網頁的源代碼,在源代碼中搜索關鍵詞。通過遍歷循環把爬出來的幾個列表整合到一個新列表里,因為之后要把它們打印到同一個列表里),一個打印列表的函數,這個函數也用遍歷循環來打印列表。這里真實應用了之前學的數據的二維表示,如果想獲得一個表格,首先得獲得一個大列表套小列表的東東,然后遍歷,format格式控制打印
我發現自己對遍歷循環中的循環變量和遍歷結構之間的關系理解有待加深。之前debug時好幾次都是因為循環變量和遍歷結構沒搞清。
另外對url中信息的理解也不夠,怎樣從中找出關鍵信息呢?
不要怕麻煩,一定要用try except來防止報錯