python3爬取拉鈎招聘數據



使用python爬去拉鈎數據
第一步:下載所需模塊
requests 進入cmd命令 :pip install requests 回車 聯網自動下載
xlwt 進入cmd命令 :pip install xlwt 回車 聯網自動下載
第二步:找到你要爬去的網頁(我爬去的是拉鈎網)
選擇瀏覽器 (火狐、谷歌)我使用的谷歌抓包
編碼工具 (idea)( pyCharm)我使用的idea

import requests #導入下載過的requesta
import xlwt #導入下載過的xlwt
#用谷歌找到對應的網頁,按f12進入檢查
   #NetWork,XHR里面有一個headers里面找
headers={ #第一個電腦和服務器信息, 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36',#電腦和服務器信息 #第二個是你從哪里進入的拉鈎網,沒有這個以為是機器人訪問。 'Referer':'https://www.lagou.com/jobs/list_python?labelWords=&fromSearch=true&suginput=', #第三個為了辨別身份,有的網站需要,有的不需要 'Cookie':'user_trace_token=20170921093258-cc8e4c13-9e6c-11e7-9d07-525400f775ce; LGUID=20170921093258-cc8e52b6-9e6c-11e7-9d07-525400f775ce; index_location_city=%E5%85%A8%E5%9B%BD; JSESSIONID=ABAAABAACEBACDGD4C15CDA891A7242B76AA4F9B7450B8B; _gat=1; PRE_UTM=; PRE_HOST=www.sogou.com; PRE_SITE=https%3A%2F%2Fwww.sogou.com%2Flink%3Furl%3DhedJjaC291NlQquFD-D9iKfCABISWiMgDLW1Nx6fG3psqHL_zYlG_a3mlRzfPLR2; PRE_LAND=https%3A%2F%2Fwww.lagou.com%2Fgongsi%2Fj75915.html; TG-TRACK-CODE=index_search; _gid=GA1.2.405703854.1505957562; _ga=GA1.2.1930895945.1505957562; Hm_lvt_4233e74dff0ae5bd0a3d81c6ccf756e6=1505957579,1505957596,1505957630,1505969456; Hm_lpvt_4233e74dff0ae5bd0a3d81c6ccf756e6=1505969469; LGSID=20170921125112-7dcd03f6-9e88-11e7-9d2f-525400f775ce; LGRID=20170921125125-85aaed04-9e88-11e7-91fb-5254005c3644; SEARCH_ID=746090bf111a497aa55f7f1b8dabffd2'#來路,你是從哪個頁面點入的 } #data對應的是分頁pn為1就相當於第一頁 def getJobList(page): data={ 'first':'false', 'pn': page, 'kd': 'python' } #發起一個post請求,指的當前網頁的鏈接 res=requests.post('https://www.lagou.com/jobs/positionAjax.json?needAddtionalResult=' 'false&isSchoolJob=0',data=data,headers=headers) result=res.json()#將里面的數據以json格式展示類似於(key,value) jobs=result['content']['positionResult']['result'] #每個對應查找 return jobs#結果返回 excelTabel= xlwt.Workbook()#創建excel對象 sheet1=excelTabel.add_sheet('lagou',cell_overwrite_ok=True) sheet1.write(0,0,'公司名')#公司名 sheet1.write(0,1,'城市')#城市 sheet1.write(0,2,'地區')#地區 sheet1.write(0,3,'全職/簡直')#全職/簡直 sheet1.write(0,4,'薪資')#薪資 sheet1.write(0,5,'職位')#職位 sheet1.write(0,6,'工作年限')#工作年限 sheet1.write(0,7,'公司規模')#公司規模 sheet1.write(0,8,'學歷')#學歷 n=1 for page in range(1,31):#循環輸出每一頁 for job in getJobList(page=page): #下面的if判斷可以加也可以不加 if '1-3'in job['workYear'] and '后端開發'in job['secondType'] and '本科'in job['education']: # and '朝陽區'in job['district'] sheet1.write(n,0,job['companyFullName'])#公司名 sheet1.write(n,1,job['city'])#城市 sheet1.write(n,2,job['district'])#地區 sheet1.write(n,3,job['jobNature'])#全職/簡直 sheet1.write(n,4,job['salary'])#薪資 sheet1.write(n,5,job['secondType'])#職位 sheet1.write(n,6,job['workYear'])#工作年限 sheet1.write(n,7,job['companySize'])#公司規模 sheet1.write(n,8,job['education'])#學歷 n+=1 #打印到wps的表格里面 excelTabel.save('lagou.xlsx')

其實准備好圖片的單不知道怎么插入到上面,

但是復制上面代碼可以爬取出數據然后再慢慢研究(headers里面的根據個人的不同來更換)

python3 :

    輸入和輸出

        str():函數返回一個用戶易讀的表達形式

            str.format()替換輸出語句中的{},跟其他字符串拼接

        repr():產生一個解析器易讀的表達形式

            repr()函數可以轉義字符串中的特殊字符

            repr()的參數可以是python的任何對象

    讀和寫文件

        open(filename,mode)將會返回一個file對象

            filename:變量是一個包含了你要訪問的文件名得字符串

            mode:決定了打開文件的模式,默認的是只讀

        f=open('c\foo.txt',w):

        str=f.read()

        print(str)

        f.close():關閉打開的文件

        f.readline():會從文件中讀取單獨的一行

        f.readlines():返回文件中包含的所有行

        f.write('aaaa'):將aaaa寫入到文件中,然后返回寫入的文件字符數

        f.tell()返回當前對象所處的位置

        f.seek():改變文件當前位置

        


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM