专栏首页拇指笔记据说这才是看热搜的正确方法?

据说这才是看热搜的正确方法?

引言

最近比较忙,但是我又想关注关注微博知乎发生了什么事,所以写了一个定时发送邮件的程序告诉我当前天气和热搜。

相关文件

相关程序文件:后台回复 “热搜” 获取。

相关模块

bs4:解析网页
urllib:获取网页
requests:获取网页
smtplib:发送邮件
email:构造邮件
random:生成随机数
re:正则匹配文本

实现效果

功能实现

爬取信息

这个程序主要由爬虫部分和自动发邮件部分组成。爬虫部分就是简单的获取--->解析网页的过程,之所以用到了urllib库和requests库是因为这两个爬虫是我之前不同时期分别写的,没去做修改,所以两个库都有。

爬取的网站包括:
天气信息:
https://www.tianqi.com/daqing/
微博热搜:
https://s.weibo.com/top/summary?cate=realtimehot
知乎热搜:
https://www.zhihu.com/billboard

在开发者模式下查看网页,确定一下需要的信息所在位置(这里以微博热搜为例)。

可见每条热搜的全部信息都包含在<tr class>标签下,而我们需要的文本信息则在标签<td class="td-02">中,使用bs4库就可以获取得到热搜的文本信息。

其余几个网站方法类似,不赘述了。

发送邮件

为了实现自动发邮件,需要开启邮箱的STMP服务(一般在设置中打开)。

开启后要获取授权码,作为登录邮箱的密码。

然后找到你使用的邮箱的SMTP服务器的地址,常见的STMP服务器地址如下。

163邮箱:
smtp.163.com	SSL端口号:465
126邮箱:
smtp.126.com	SSL端口号:25
qq邮箱:
smtp.qq.com		SSL端口号:465

准备好需要的信息后,配置一下发件邮箱和接收邮箱。

mail_host = "smtp.163.com"  # 这里以163邮箱为例
mail_user = "用户名(邮箱@前的部分)"
mail_pass = "授权码,不是登陆密码"      
sender = '你的发送邮箱' 
message['From'] = "{}".format(sender)

receivers = ['接收邮箱1','接收邮箱2']  # 接收邮箱可以有若干个
message['To'] = ",".join(receivers)

最后配置一下发送内容和主题,send_stringtitle是调用时传入函数的。

配置好相关信息后,就可以使用smtplib库发信了。

定时执行

如果需要手动执行程序才能发送邮件的话,这个程序的意义就不大了,所以需要设置一下,实现定时执行这个程序。右击此电脑,打开管理窗口。进入如下界面,创建任务。大多数都是常规设置,按照需要设置就可以了。

但是这部分需要说明一下,框1不需要改变,框2写你的程序的位置,框3写python.exe的位置。

最后

现在主要存在的问题是电脑关机后,程序无法运行,可以通过设置在树莓派上定时运行程序来解决这个问题。关于在树莓派定时运行程序的方法,过两天我会另写一篇文章。

本文分享自微信公众号 - 拇指笔记(shuzhi990),作者:拇指笔记

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-04-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 三步修改jupyter notebook主题和页面宽度

    最近每天都对着jupyter notebook的默认主题,感觉实在是单调了点。而且jupyter notebook的宽度,实在是让人难受...

    树枝990
  • 【Python爬虫】写一个爬取中国天气网的终端版天气预报爬虫

    前几篇文章介绍了爬取静态网站的主要方法。今天写一个小项目实践一下。本项目可以在终端窗口查询全国3400多个区县的当天天气信息和近七天天气信息。

    树枝990
  • 【动手学深度学习笔记】之softmax回归

    对于离散值预测问题,我们可以使用诸如softmax回归这样的分类模型。softmax回归模型有多个输出单元。本章以softmax回归模型为例,介绍神经网络中的分...

    树枝990
  • 《挑战30天C++入门极限》图文例解C++类的多重继承与虚拟继承

      //站点:www.cndev-lab.com //所有稿件均有版权,如要转载,请务必著名出处和作者 #include <iostr...

    landv
  • 重磅发布 | 安恒于世界互联网大会首次发布“邮箱安全综合解决方案”

    邮箱系统在互联网中扮演着重要的角色,个人、企业、政府等用户将邮箱系统作为通讯、传输文件的重要组成部分。邮箱系统保存着政府、党政机关、各企事业单位的大量敏感信息。...

    安恒信息
  • C语言 | 每日基础(13)

    读者:表达式: a ˆ= b ˆ= a ˆ= b 它不需要临时变量就可以交换 a 和 b 的值。

    C语言入门到精通
  • 决策树会有哪些特性?

    决策树(Decision Tree)是机器学习中最常见的算法, 因为决策树的结果简单,容易理解, 因此应用超级广泛, 但是机器学习的专家们在设计决策树的时候会考...

    用户1332428
  • VBA中的几个小Tips(一)

    这里i就是你能够获得的第二张sheet中的所有有效行的个数。Sheets()括号里面的数字就是指第几个sheet。

    钱塘小甲子
  • iOS8来了:开放红利,输入法狂欢

    当我在拉斯维加斯的Luxor Hotel(金字塔酒店)碰碰手气的当口,朋友圈大部分消息都是iOS8更新版本正式放出相关的消息。尽管不少人都在吐槽iOS每次更新所...

    罗超频道
  • 想要好看的设计?收下这份网页背景设计指南吧!

    网页背景设计看似在整个网站的设计中处于一个不起眼的位置。实则,它对于用户的留存性及促进网站转化率方面都起到非常重要的作用。若是网页背景设计不合理,或者图片、色彩...

    奔跑的小鹿

扫码关注云+社区

领取腾讯云代金券