python爬蟲 爬取51job網招聘資訊

2021-10-02 07:45:11 字數 1526 閱讀 3380

專案概覽

在搜尋頁中,所有符合條件的職位資訊以列表的形式排序設有分頁顯示。每條職位資訊是乙個url 位址,通過url 位址可以進入該職位的詳情頁。

職位詳情頁也是資料爬取的頁面,爬取的資料資訊有:職位名稱、企業名稱、待遇、福利以及職位要求等等。

專案框架

具體步驟

一:獲取城市編號

def

get_city_code()

: url =

''r = requests.get(url)

begin = r.text.find(

'var hotcity'

)if begin ==-1

:print

('not find var hotcity'

)# print(begin)

end = r.text.find(

';',begin)

if end ==-1

:print

('not find ; '

)# print(end)

result_text = r.text[begin : end-1]

#print(result_text)

begin = result_text.find(

' i =

0while i <

len(key_list)

: city_dict[value_list[i]

]= key_list[i]

i +=

1# print(city_dict)

return city_dict

獲取招聘職位總頁數
headers =

# 獲取職位總頁數

defget_pagenumber

(city_code,keyword)

: url =

''+str

(city_code)

+ \ ',000000,0000,00,9,99,'

+str

(keyword)

+',2,1.html'

r = requests.get(url=url,headers=headers)

soup = beautifulsoup(r.content.decode(

'gbk'),

'html5lib'

) find_page = soup.find(

'div'

,class_=

'rt'

).gettext(

) temp = re.findall(r"\d+\.?\d*"

,find_page)

if temp:

pagenumber = math.ceil(

int(temp[0]

)/50)

return pagenumber

else

:return

0

爬取每個職位資訊

資料儲存 總結

簡易爬蟲爬取51job招聘資訊

目標 上的python相關招聘資訊 入門級別 import re import urllib.request class grab object 定義類屬性 num 0 def init self 請求的 self.url 請求頭 self.headers defopenurl self 建立請求物...

爬取51job的資訊

coding utf 8 import scrapy from items import jobspideritem class jobspider scrapy.spider name job allowed domains 51job.com start urls def parse self,...

爬取51job職位資訊

首先獲取一下所有城市對應的key值,找到所有城市所在的json字串,向json所在的js頁面傳送請求,獲取資訊,然後從第一頁獲取總的頁數,然後遍歷所有頁數,每到新的一頁,找到所有職位資訊的詳情頁url,遍歷詳情頁,獲取所要的職位資訊。請求並解析城市編碼函式 return 返回乙個字典 decode ...