在中有一节为通过网络获取今天是不是圣诞节,但是我今天写的时候那个网站登录奇慢,本着求人不如求己,能国内绝不国外的原则,我决定还是自己找个网站爬取日期.

比如

再简单的看了看该网站的代码之后,我最终选择了获取黄色荧光笔标出的那个a标签内容
当然,你也可以获取图中的整个日历内容(蓝色圈部分),通过这种方式,你讲拥有一个完整的”在线日期库”

简单的东西还是直接代码:

from urllib.request import urlopen
from bs4 import BeautifulSoup
import reprint((BeautifulSoup(urlopen("http://www.baibaidu.com/"),'lxml').find('h3').find('a')).text)

好吧似乎有点太简单了=- =只有一行
那再来一遍,顺便再做点处理

html = urlopen("http://www.baibaidu.com/")
bsObj = BeautifulSoup(html,'lxml')
data= (bsObj.find('h3').find('a')).text
print(data)
# 获取数字形式的字符串
numData = re.sub(r'\D', "", str2)
print(numData)

然后还可以之前写的发送邮件,可以在一起做点不同的事情,比如通过对获取的信息进行一定的出来再将一些内容发送的邮箱,可以是群发(最好是通过打开存储邮箱信息的文件的形式),也可以是单独发送.如果你是用本机或者服务器按时启动这个脚本进行检查,我们将获得一个很酷的小工具.

代码如下

# - * - coding: utf - 8 -*-
#
# 作者:田丰
# 邮箱:fonttian@163.com
# 撰写时间:2017年4月22日
# Python版本:3.6.1
# CSDN:http://blog.csdn.net/fontthrone
#
from urllib.request import urlopen
from bs4 import BeautifulSoup
import re
import smtplib
import email.mime.multipart
import email.mime.textmsg = email.mime.multipart.MIMEMultipart()
msgFrom = 'fonttian@163.com'
msgTo = 'marktian1986@163.com'
smtpSever='smtp.163.com'
smtpPort = '25'
sqm='将这里替换为你的授权码'  # 在登录smtp时需要login中的密码应当使用授权码而非账户密码# 获取日期信息
html = urlopen("http://www.baibaidu.com/")
bsObj = BeautifulSoup(html,'lxml')
data= (bsObj.find('h3').find('a')).text
dataNumber = re.sub(r'\D', "", data)
# 从data中获取数字日期,并做简单的判断,你可以在这里做一些不同寻常的处理
if dataNumber.endswith("921"):data = data+'\n 今天是zimo生日'trigger=True # 这是示例用的触发器greeting='''亲爱的:生日快乐,我最爱你的,么么哒.(=- =专业拉仇恨)'''msg['from'] = msgFrom
msg['to'] = msgTo
msg['subject'] = 'Python自动邮件-'+dataNumber
content = data
txt = email.mime.text.MIMEText(content)
msg.attach(txt)
smtp = smtplib
smtp = smtplib.SMTP()
'''
smtplib的connect(连接到邮件服务器)、login(登陆验证)、sendmail(发送邮件)
'''
smtp.connect(smtpSever, smtpPort)
smtp.login(msgFrom, sqm)
smtp.sendmail(msgFrom, msgTo, str(msg))
# 示例:这里利用对网络日期处理做了一些特殊的效果
if trigger=True:msgFrom='xxxxxx@xx.com'smtp.sendmail(msgFrom, msgTo, str(greeting))# s = smtplib.SMTP("localhost")
# s.send_message(msg)
smtp.quit()

BeautifulSoup 一行代码获取今日日期,与smtplib结合相关推荐

  1. SimulateSlidingTrack滑动轨迹库:一行代码获取仿真手动滑动轨迹

    SimulateSlidingTrack 仿真滑动轨迹 https://github.com/HuRuWo/SimulateSlidingTrack SimulateSlidingTrack 一行代码 ...

  2. 神奇的Grails:自关联的树状Domain一行代码获取所有子节点

    见证Groovy/Grails的神奇时刻到了,你相信吗?用一行代码就可以获取树状结构中某节点下的所有全部子节点!注意:这个树是无深度限制的.无深度限制这点很重要,如果有限深度的树,那我们也很容易通过层 ...

  3. 小程序 : js获取今日日期、加日期、减日期; 判断今日 、判断昨日

    获取今日,日期加.日期减 效果图: 选择日期大于今日时 .js代码 Page({/*** 页面的初始数据*/data: {choseDate: '', // 选择的时间week:'', //星期几on ...

  4. php获取当前周得周一_php一行代码获取本周一,本周日,上周一,上周日,本月一日,本月最后一日,上月一日,上月最后一日日期...

    //本周一 echo date('Y-m-d', (time() - ((date('w') == 0 ? 7 : date('w')) - 1) * 24 * 3600)); //w为星期几的数字形 ...

  5. php一行代码获取本周一,本周日,上周一,上周日,本月一日,本月最后一日,上月一日,上月最后一日日期

    <?php //本周一 echo date('Y-m-d', (time() - ((date('w') == 0 ? 7 : date('w')) - 1) * 24 * 3600)); // ...

  6. 一行代码获取股票、基金数据,并绘制K线图

    大家好,我是老表,今天这篇文章和大家分享一下如何利用Python获取股票.基金数据,并进行可视化,为金融分析&可视化先导篇,欢迎大家学习.点赞.收藏支持. 文末赠书 5 本<Python ...

  7. python如何获取股票数据_Python|一行代码获取股票数据

    随着金融行业的发展,金融相关的数据变得越来越有价值.股票的历史数据就是一种非常重要的时间序列数据,本文介绍一个不需要自己动手写爬虫就能够获取各个公司的股票信息的Python库--yfinance. 0 ...

  8. 教你如何用一行代码获取免费的QQ气泡框

    话不多说,附上代码一份: http://zb.vip.qq.com/bubble?id=对应数字 可用数字有: 11 12 34 41 50 53 54 57 60 62 63 70 77 84 93 ...

  9. ssdt函数索引号_【NT】一行代码获取SSDT服务索引号

    注:本文是以32位的windows7为实例. 今天在研究SSDT的过程中看到了一个大神写的教程,其中还附了一些代码,代码主要讲解的是SSDT hook过程,我在他的代码中没有看到任何有关服务函数的索引 ...

最新文章

  1. ProGit-读书简记
  2. 关于C/S模式开发的学习笔记
  3. 【数据结构-图】4.拓扑排序和关键路径(注解+原理)
  4. overflow超出显示_实现:超过N行折叠并显示“...查看全部”【功能】
  5. 两张趣图助你理解 HTTP 状态码
  6. Android扩展类方法,Android 扩展 uni小程序SDK 原生能力
  7. 防止浏览器拦截的新窗口打开链接方案
  8. linux查看共享内存max,浅析Linux的共享内存与tmpfs文件系统
  9. nginx location匹配除了一个路径_nginx部署React项目
  10. 钉钉现身数博会:增长200% 年内要覆盖450万家企业组织
  11. 分享思路:Python+Spark爬虫音乐推荐系统 音乐数据分析可视化 音乐推荐app 音乐网站 大数据毕业设计(app+web+爬虫+spark+可视化)
  12. win下使用curl
  13. weblogic安装与配置注意事项
  14. 常州大学 计算机与人工智能学院,常熟理工学院新闻网
  15. 平衡运输问题及其表上作业法---指派问题及其匈牙利解法
  16. 容联云:实现异步 手机短信验证码
  17. 开发者七问七答:什么是产品化?
  18. ECharts 异步加载数据及loading 动画
  19. pagerank算法详解
  20. 腾讯QQ至尊宝功能停止申请 已试运营三年

热门文章

  1. Kubernetes1.5新特性(一):Kubelet API增加认证和授权能力
  2. 18 | 为什么这些SQL语句逻辑相同,性能却差异巨大?
  3. 杂记-01.xcode模拟器管理
  4. 05-移动端开发教程-CSS3兼容处理
  5. 如何在 Azure 中的 Linux 经典虚拟机上设置终结点
  6. 一步步教你如何用别人的无线上网,附带破解软件
  7. 深入理解LVS,还学不会算我输!
  8. 2020 年的第 1 个重磅彩蛋!
  9. 小谈 Java 单元测试
  10. Java 8系列之Stream的强大工具Collector