目前在看一部连载小说,每天花时间查更新太麻烦了,毕竟也是学过爬虫的,用python写个小程序自动推送更新还不是美滋滋的
- 思路
-
首先本地建立一个 缓存文件记录当前已看的章节数
-
爬取章节目录,和本地缓存进行对比,是否有更新的章节
-
如果有更新的章节,那么获取最新的章节,推送到设定的邮箱
-
加死循环,定时检查,并且部署到服务器上
- 工具
-
请求库:requests
-
网页解析库:pyquery
-
邮箱协议: smtplib
- 代码
if __name__=="__main__":
url = "http://www.huanyue123.com/book/37/37849/"
with open('temp.txt', 'w', encoding="gbk") as f:
temp = f.write("http://www.huanyue123.com/book/37/37849/28582591.html")
while True:
r = get_catalog(url)
urls = check_chapter(r)
if len(urls)!=0:
send_email(urls)
time.sleep(28800)
else:
print("没有更新的小说哦")
time.sleep(3600)
仅展示了部分代码,完整代码见github
-
效果图:
-
多说一句
通过xshell连接的远程服务器,为了在关闭xshell后程序能继续运行,可以使用nohup和&结合
nohup python mail.py > /dev/null 2> /dev/null & #具体含义可以看看我的另一篇博客
欢迎留言点赞交流!