依稀還記得15年剛出來工做那會,在第一個互聯網公司實習,在公司聽慣了身邊人說公司這很差,那很差,做爲新人的我深受影響,不知從什麼時候開始就想快點結束實習期換一份更好的工做;html
千盼萬盼,終於迎來第二年的畢業,畢業後我也選擇了大部分實習生的選擇,沒有再回到公司,在以後,懵懂的我終於迎來人生的第一次打擊,在以後的兩個月的時間,我開始在作比較,結果沒有找到一家比上家更好的工做,因爲當初的不辭而別,我也感受沒臉回到上家公司,終於到了身無分文的地步,而我也不得以選擇一家「差」的公司,想着作幾個月存點錢再去找一份更好的工做;ajax
這樣的惡性循環在我身上循環了一年,「低不成,高不就」的現象也許不僅是出如今我身上,下面教你若是找到一份本身相對滿意的工做!segmentfault
拿一個招聘網站用來分析:瀏覽器
一、分析網站結構,肯定咱們要抓取的數據內容cookie
經過 Chrome 瀏覽器右鍵檢查查看 network 並對網站結構進行分析發現咱們在 ajax 請求界面中,能夠看到這些返回的數據正是網站頁面中Python崗位招聘的詳情信息。session
以後咱們在查看headers的時候發現該網站請求的方式是Post請求,也就是說在請求的過程當中須要攜帶Form Data數據工具
在屢次對網頁界面進行分析評測的時候,發如今點擊第二頁的時候Form Data的攜帶格式發生了變化。能夠看到 pn=2 確定是我們的當前的頁數。學習
在直接請求界面的時候咱們發現網站有反爬機制,不讓咱們請求《"msg":"您操做太頻繁,請稍後再訪問"》,咱們攜帶請求頭假裝一下,不行網站
這裏我用了一種能夠快速生成headers以及cookie的工具:spa
我懷疑該網站具備多重反爬策略,當我在次添加cookies試一下的時候;咱們發現數據能夠正常獲取了;難道就這麼簡單就解決拉勾網數據獲取的問題了嗎?然而機智的我察覺到事情並無想像的那麼簡單;
個人最終解決方案是共用 session,就是說咱們在每次請求界面的時候先獲取session而後原地更新咱們的session以後在進行數據的抓取,最後拿到想要的數據。
運行結果:
這裏經過 excel 表格的形式進行存儲;
須要 pip install xlwt 安裝一下 xlwt 庫.
最終顯示數據內容
若是須要源碼,能夠看下圖
點擊瞭解更多,獲取更多Python爬蟲全棧學習資料