python爬取招聘要求等信息实例

时间:2021-05-22

在我们人生的路途中,找工作是每个人都会经历的阶段,小编曾经也是苦苦求职大军中的一员。怀着对以后的规划和想象,我们在找工作的时候,会看一些招聘信息,然后从中挑选合适的岗位。不过招聘的岗位每个公司都有不少的需求,我们如何从中获取数据,来进行针对岗位方面的查找呢?

大致流程如下:

1.从代码中取出pid

2.根据pid拼接网址 => 得到 detail_url,使用requests.get,防止爬虫挂掉,一旦发现爬取的detail重复,就重新启动爬虫

3.根据detail_url获取网页html信息 => requests - > html,使用BeautifulSoup

若爬取太快,就等着解封

if html.status_code!=200 print('status_code if {}'.format(html.status_code))

4.根据html得到soup => soup

5.从soup中获取特定元素内容 => 岗位信息

6.保存数据到MongoDB中

代码:

# @author: limingxuan # @contect: limx2011@hotmail.com# @blog: https:///job_detail/{}.html'.format(item['pid']) #单引号和双引号相同,str.format()新格式化方式 #第一阶段顺利打印出岗位页面的url print(detail_url) #返回的html是 Response 类的结果 html = requests.get(detail_url,headers = headers) if html.status_code != 200: print('status_code is {}'.format(html.status_code)) break #返回值soup表示一个文档的全部内容(html.praser是html解析器) soup = BeautifulSoup(html.text,'html.parser') job = soup.select('.job-sec .text') print(job) #??? if len(job)<1: item['detail'] = job[0].text.strip() #职位描述 location = soup.select(".job-sec .job-location .location-address") item['location'] = location[0].text.strip() #工作地点 item['updated_at'] = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) #实时爬取时间 #print(item['detail']) #print(item['location']) #print(item['updated_at']) res = save(item) #调用保存数据结构 print(res) time.sleep(40)#爬太快IP被封了24小时==#保存数据到MongoDB中def save(item): return db.Python_jobs.update_one({'_id':item['_id']},{'$set':item}) #why item ??? # 保存数据到MongoDB if __name__ == '__main__': init()

最终结果就是在MongoBooster中看到新增了detail和location的数据内容

到此这篇关于python爬取招聘要求等信息实例的文章就介绍到这了,更多相关python爬虫获取招聘要求的代码内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章