项目背景:因为有时候要关注一些官网上的通知,比如政府网站、学校网站等等,这些通知往往具有时效性,而我们也不能保证每天都能去上网看,所以使用python做了这个小任务,每天定时爬取学校官网的通知,并发送到邮箱。
这个小任务主要包括三部分:
- 数据爬取
- 邮件发送
- 定时执行
1、数据爬取
这里我使用requests+beautifulsoup来进行数据抓取。
首先抓取文章列表页的url,返回一个list:
def get_url():
url = 'http://www.bzuu.edu.cn/jxjy/125/list.htm'
r = requests.get(url=url)
soup = BeautifulSoup(r.text, 'lxml')
links = soup.find_all('td', width="97%")
main_url = 'http://www.bzuu.edu.cn'
url_list = []
for link in links:
a = link.a['href']
if a.endswith('htm'):
url_list.append(main_url+a)
return url_list
接着获取文章发布时间和标题