当前位置: 首页 > 后端技术 > Python

Python爬取高校就业岗位,给电脑和微信发送通知

时间:2023-03-26 10:49:02 Python

今天介绍的项目有两个核心内容,一个是爬取内容,一个是发送消息通知。让我们一一解释。1爬取职位信息,确定爬取的思路。本项目爬取了江苏省所有高校,而且不止一所。爬取数据入口为江苏省就业平台(http://www.91job.org.cn/defau...)本页面收录了江苏省各市160余所高校的就业网站。点此进入各站点内容,与各高校官网就业信息站点内容相同。以南京师范大学为例:可以看到除了url不同,其他内容都是一样的。这样带来的一个好处就是我们要爬取多个高校的就业信息。我们不需要去各个学院的官网找内容,去这个网站找内容就可以了,url格式也是固定的“CollegeEnglish.91job.org.cn".\这不是最好的,最好的是各个大学招聘信息页面的HTML代码标签是一样的。我们对比一下南京师范大学和东南大学的招聘信息:可以看到HTML标签和属性的值都是一样的,这样带来的另一个好处就是我们可以写一个代码爬取多所大学的就业列表,另外我在山东找到了两个大学网站,joblisting页面的html和上面一样,但是我在北京找了两个完全不一样的网站,既然很多高校都可以做到,说明这件事背后有人在推动这件事,而且无论是谁,都会为自己的行为点赞,其实企业经常会遇到这样的问题,经常是一个部门或者多个部门的数据格式不一致,往往需要花很多时间在数据协作上做很多事情连接,非常费时费力,维护难度大。爬取数据有了url和网页格式,我们就可以轻松的爬取数据。首先,我们需要一个要爬取的高校列表。我们需要的是第一栏,用来拼接高校就业网站的url。有了url,我们就可以发送请求获取网页的源代码了。核心爬虫代码就是这样,非常简单。Line51拼接各大学joblisturlLine52get_url函数中,使用requests.get获取网页源码可以看到56行遍历joblist,从中获取joblink,发送通知。抓取作业后,您可以发送通知。项目支持打印控制台、windows气泡通知、微信通知三种通知方式。需要增加判断是否通知的逻辑,如果已经通知过,就不需要再通知了。第59~61行用于判断是否需要通知。通知的内容会写入url_list.txt,程序启动时会将文件内容读入url_list变量。第65~72行根据配置以不同的方式发送通知。打印通知没什么可说的。下面简单介绍一下微信好友和windows气泡通知。微信好友通知微信通知主要使用了wxpy模块,它在itchat的基础上使用了大量简单易用的接口。首先,需要在第106~107行初始化Bot对象。启动程序时会弹出一个二维码,需要扫码登录。第109~102行决定将数据发送给谁,可以发送给档案助手,也可以发送给自己,也可以发送给任何朋友.调用发送函数,就可以将内容发送给好友了,非常简单。wxpy文档提醒大家尽量使用小号,因为使用该模块可能会导致网页版微信无法登录。发送windows气泡通知windows气泡通知主要是通过调用windows系统API来完成的。第9行判断运行程序的系统是否为Windows。如果是这样,第15行初始化TestTaskbarIcon对象消息以发送消息。TestTaskbarIcon类在windows模块中,但是项目源码中并没有定义windows模块。估计是作者忘记上传了。自己百度一下TestTaskbarIcon,网上可以找到TestTaskbarIcon的源码。在项目根目录下新建一个windows.py文件,将TestTaskbarIcon的源码复制进去。TestTaskbarIcon的源码都是调用windows系统API,没什么好说的,核心代码就是调用showMsg函数实现气泡通知的showMsg函数。只要稍微修改一下之前发送位置的代码,将show_msg改为showMsg,然后修改下载的参数即可。运行效果:这样整个项目就介绍完了,比较简单,总共100多行代码。又到毕业季了,想炫耀就得抓紧机会了,我只能帮到你了。以上就是本次分享的全部内容。觉得文章还不错的话,请关注公众号:Python编程学习圈,每日干货分享,发送“J”还能领取大量学习资料。或者去编程学习网了解更多编程技术知识。