目標源地址url:www.risfond.com/case/fmcg/2… html
點擊右鍵查看網頁源代碼,會發現上圖方框內的內容在網頁源代碼(下圖)是能夠找到的! python
因此咱們可使用python內置的模塊去訪問網址,這裏能夠用requests或者urllib,由於以前介紹過requests模塊的使用,這裏咱們就不作過多闡述,直接用urllib開戰!雖然requests真的好用太多,但初學者其實也是須要學習內容的,技術無罪。接下來就開始咱們的實戰!1.獲取網站源碼正則表達式
2.從源碼解析所須要的數據bash
3.數據存儲到excel函數
須要安裝的庫:pip install xlwt佈局
第一步先導入urllib.request模塊,記住python2跟3在模塊上面使用是有區別的,這個模塊就是如此。
若是咱們想訪問多個頁面的話須要找尋網站的網址規律是怎麼樣的
http://www.risfond.com/case/fmcg/26700 ,http://www.risfond.com/case/fmcg/26701,
點擊網址下一條就能夠發現網址的規律,網址後面的數字是發生了改變的,
因此能夠採用字符串格式化跟range函數,for in來進行使用,基礎知識附帶使用講解下。
複製代碼
1.range函數能夠生成一個整數序列,裏面只有一個參數默認從0開始,2個參數是含頭不含尾,示例以下: 學習
2.字符串格式化,%s表明字符串,%d表明數字,當不知道用什麼的狀況下能夠用%s代替,format是用{}.format()的方式作到字符串格式化的。 網站
3.發送請求ui
for i in range(26700,26716):
url = 'http://www.risfond.com/case/fmcg/{}'.format(i)
html = urllib.request.urlopen(url).read().decode('utf-8')#urlopen打開網址 read 讀取源代碼
print(html)
複製代碼
這裏用的是re正則表達式,能夠根據必定的規則從源碼中匹配出相對應的內容,打個比方說,我去水果店買西瓜,西瓜的特徵是果綠色的外殼,紅色的果肉,橢圓形狀,都是根據這個特徵去尋找的,在網站中間也是如此,獲取的內容有着共同的標籤好比div,並且都是在同樣的html佈局中,就能夠寫一個正則,用findall去從源碼html中匹配出來。編碼
page_list = re.findall(r'<div class="sc_d_c">.*?<span class="sc_d_con">(.*?)</span></div>',html)
複製代碼
根據內容,我以爲存儲到excel表格裏面會比較好,因此對每行也寫了必定的註釋,你們能夠參考下!
newTable = 'test2019.xls'#表格名稱
wb = xlwt.Workbook(encoding='utf-8') #建立excel文件 設置編碼
ws = wb.add_sheet('rsfd')#表名稱
headData = ['職位名稱','職位地點','時間','行業','招聘時間','人數','顧問']
for colnum in range(0,7):
ws.write(0,colnum,heData[colnum],xlwt.easyxf('font:bold on'))
index = 1
for j in range(0,len(items)):#計算數據有多少條
for i in range(0,7):
print(items[j][i])
ws.write(index,i,items[j][i])#行數 列數 數據
index+=1
wb.save(newTable)#保存
複製代碼
結果以下:咱們能夠看到全部的數據都被抓下來,而且存儲到名爲test2019的文件夾了。