前些天幫同事爬取一些智聯招聘網上的關於數據分析的職位信息,他說要做一些數據分析看看,現在已經幫他爬完了。我本來想用Scrapy來爬的,但是不知道為什么爬取的數據和真實搜到的數據不太一樣,比如:搜索到的杭州地區數據分析職位個數有5000左右,但是爬取到的只有4000多點,而且IP一直被ban,免費的IP又不好用,只能說是scrapy 的速度太快了(還是我scrapy框架學的不是很好),所以我索性用requests規規矩矩的爬取,保證速度,爬取的數據質量還不錯。我已經給他了數據,可能的話到時候把他的數據分析部分來分享下。
接下來說下思路:
思路
其實你在做完一些常規的反反爬措施之后基本能爬了,這里我關於IP我講一下:
我主要是爬完一個職位之后睡眠1-3秒,隨機選擇
p=random.randint(1,3)
time.sleep(p)
其他也沒有什么特別的了,我是犧牲了爬取的速度,反正是比較慢的,對多線程、多進程不是很熟,所以就沒有用。
實戰操作
相關代碼已經修改調試成功----2017-4-7
目標網站:智聯招聘
實現:對智聯招聘上搜索數據分析的職位相關信息的爬取,如職位名稱、薪資、工作經驗等等。具體看如下圖:
數據:我都存放在百度網盤里面 鏈接:http://pan.baidu.com/s/1i5okiZb 密碼:xnig
完整代碼詳情請移步我的github:https://github.com/pujinxiao/zhilian
作者:今孝
出處:http://www.cnblogs.com/jinxiao-pu/p/6682293.html
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接。