Python实现WP博客文章更新提醒

喜欢的博主没有更新固定时间?看我用Python来监控它。 导语 众所周知,B站有很多有趣的UP主,可以教大家一些"实用"的知识: 但是他们一般都没有固定的更新时间,那么如何才能第一时间知道自己又有新的饭点可以看的下饭素材呢?当然是用python来写个脚本自动监控UP是否更新了视频,并自动下载啦~ 废话不多说,让我们愉快地开始吧~ 相关文件 开发工具 Python版本:3.7.8 相关模块: DecryptLogin模块; videofetch模块; 以及一些python自带的模块。 环境搭建 安装Python并添加到环境变... 阅读详情

1.导入

最近翻邮箱的时候,无意间看到了各种厂商发来的产品广告,突发奇想用Python做了一个Wordpress文章更新自动给所有用户发邮件的功能。

2.制作

2.1.模块安装

这个功能需要以下模块:

import time
import pymysql
import smtplib
from email.mime.text import MIMEText
from email.header import Header
import feedparser

可以在CMD内使用:

pip install time pymysql smtplib email feedparser

安装这些模块。

2.2.代码

2.2.1.从数据库获取用户列表方法

需要填入你Wordpress博客数据库的用户名,名称,还有用户名对应的密码

注意:如果这个Python脚本运行在本地,服务器ip就可以用127.0.0.1代替,如果运行在其他地方,需要填写服务器外网ip,并且数据库要改成对所有人开放

def sendmain(url):
    db = pymysql.connect(host='你服务器的ip', user="数据库用户名", passwd="数据库密码", db='数据库名称', port=3306, charset='utf8')
    cursor = db.cursor()
    sql = """SELECT * FROM wp_users"""
    cursor.execute(sql)
    desc = cursor.description
    data_dict = [dict(zip([col[0] for col in desc], row)) for row in cursor.fetchall()] 
    cursor.close()
    db.close()

    print(data_dict)
    for i in range(len(data_dict)):
        sendsmtpm(url,data_dict[i]['user_email'])
        print('成功发送给:'+data_dict[i]['user_email'])

2.2.2.发送邮件方法

注:如果没有SMTP服务器可以用163邮箱代替,详见文末4.1

def sendsmtpm(url,to):
    smtp = smtplib.SMTP()
    smtp.connect("你的smtp服务器", port=25)
    smtp.login(user="你的smtp用户名", password="smtp服务器用户名对应的密码")
    message = MIMEText('xxxxx新文章更新了:'+url)# 发送的一段文字,url变量是更新的文章地址
    message['From'] = Header("xxxxx",'utf-8')  # 发件人的昵称
    message['Subject'] = 'xxxxx有文章更新啦'  # 定义主题内容
    print(message)

    smtp.sendmail(from_addr="smtp发送者邮箱,一般跟用户名相同", to_addrs=to, msg=str(message))
    smtp.close()

2.2.3.获取rss并发送邮件

rss_oschina = feedparser.parse('你的RSS链接')
first=[rss_oschina['entries'][0]['links'][0]['href'],rss_oschina['entries'][1]['links'][0]['href'],rss_oschina['entries'][2]['links'][0]['href'],rss_oschina['entries'][3]['links'][0]['href'],rss_oschina['entries'][4]['links'][0]['href'],rss_oschina['entries'][5]['links'][0]['href']]
print('Start')
print(first)
while True:
    rss_oschina = feedparser.parse('你的RSS链接')
    send=True
    for i in range(len(first)):
        if first[i]==rss_oschina['entries'][0]['links'][0]['href']:
            send=False
    if send:
        sendmain(rss_oschina['entries'][0]['links'][0]['href'])
        print('stmpsend:'+rss_oschina['entries'][0]['links'][0]['href'])
        first.append(rss_oschina['entries'][0]['links'][0]['href'])
    time.sleep(5)

2.2.4.完整代码

import time
import pymysql
import smtplib
from email.mime.text import MIMEText
from email.header import Header
import feedparser

def sendmain(url):
    db = pymysql.connect(host='你服务器的ip', user="数据库用户名", passwd="数据库密码", db='数据库名称', port=3306, charset='utf8')
    cursor = db.cursor()
    sql = """SELECT * FROM wp_users"""
    cursor.execute(sql)
    desc = cursor.description
    data_dict = [dict(zip([col[0] for col in desc], row)) for row in cursor.fetchall()] 
    cursor.close()
    db.close()

    print(data_dict)
    for i in range(len(data_dict)):
        sendsmtpm(url,data_dict[i]['user_email'])
        print('成功发送给:'+data_dict[i]['user_email'])
def sendsmtpm(url,to):
    smtp = smtplib.SMTP()
    smtp.connect("你的smtp服务器", port=25)
    smtp.login(user="你的smtp用户名", password="smtp服务器用户名对应的密码")
    message = MIMEText('xxxxx新文章更新了:'+url)# 发送的一段文字,url变量是更新的文章地址
    message['From'] = Header("xxxxx",'utf-8')  # 发件人的昵称
    message['Subject'] = 'xxxxx有文章更新啦'  # 定义主题内容
    print(message)

    smtp.sendmail(from_addr="smtp发送者邮箱,一般跟用户名相同", to_addrs=to, msg=str(message))
    smtp.close()
rss_oschina = feedparser.parse('你的RSS链接')
first=[rss_oschina['entries'][0]['links'][0]['href'],rss_oschina['entries'][1]['links'][0]['href'],rss_oschina['entries'][2]['links'][0]['href'],rss_oschina['entries'][3]['links'][0]['href'],rss_oschina['entries'][4]['links'][0]['href'],rss_oschina['entries'][5]['links'][0]['href']]
print('Start')
print(first)
while True:
    rss_oschina = feedparser.parse('你的RSS链接')
    send=True
    for i in range(len(first)):
        if first[i]==rss_oschina['entries'][0]['links'][0]['href']:
            send=False
    if send:
        sendmain(rss_oschina['entries'][0]['links'][0]['href'])
        print('stmpsend:'+rss_oschina['entries'][0]['links'][0]['href'])
        first.append(rss_oschina['entries'][0]['links'][0]['href'])
    time.sleep(5)

3.完成

可以将这些代码部署到你的服务器上,详见:将你的代码部署到服务器上


文章在Python实现WP博客文章更新提醒-WilliamSun的小窝 同步更新

4.1.163邮箱启用SMTP

先注册并登录163邮箱,在后台顶栏找到“设置”菜单点击进入

选择 POP3/SMTP/IMAP

点击”开启“

按照步骤发送短信验证,就可以获取SMTP密码了

注:163邮箱的smtp服务器地址为:smtp.163.com

 


文章在Python实现WP博客文章更新提醒-WilliamSun的小窝 同步更新

用python实现简单的网站信息更新自动通知 用python实现简单的网站信息更新自动通知 因为需要及时收到学校研究生网站的消息,每过一小段时间去网站看耗费精力,且不一定能及时的收到消息,所以萌生了用程序定时检测网站是否更新的想法。代码地址点这里。 实现功能 检测目标网站更新,获取更新并以邮件形式通知。 适用场景 票务网站活动更新通知 学校教务网站更新通知 新剧新番更新通知 查成绩通知 通过程序发邮件,节约登录时间 ...... 编译环境 语言:python3 开发编译器:pyc 阅读详情

相关推荐

python网站更新检测小爬虫

考研期间为了第一时间关注各大招生单位的调剂信息,写了一个网页更新检测的小脚本,一旦网页发布了新内容就会发邮件提醒

weixin_43439761的博客 5285

利用Python和Selenium编程,实现定时自动检索特定网页,发现特定网页内容发生变化后,向管理员发送提醒邮件(一)

要求爬取某单位网站,登录后台查看是否有新增“网友提问”,如果有新的提问,向特定邮箱发出提醒邮件。

weixin_60535956的博客 3509

Docker系列 WordPress系列 WordPress上传或更新Markdown的最佳实践

转自我的个人博客https://blognas.hwb0307.com。欢迎关注! 前言 如果你已经有了一个比较好的博客文章管理流程,可以忽略本章的内容。 如果你已经按《Docker系列 WordPress系列 安装WP Githuber MD》的教程安装并设置了WP Githuber MD插件,相信你对WordPress的风格已经有了一定的了解。心里对于要不要继续将WordPress作为平台继续使用,已经有了一定的想法。 假如你要长期坚持在WordPress用Markdown写作,那么一个自动化流.

huangwb8的博客 472

python监控网页更新_【小白教程】Python3监控网页

之前用RSS来监控网页更新内容,可惜刷新时间太长了,三个小时。。只能看看新闻啥的,又没有小钱钱充会员(摊手听说Python可以做这个功能,抱着试试看的态度,本以为会很麻烦,没想到这么简单哈哈~我从来没有用过Python都做出来了,相信你也没问题!(我真是纯小白,路过的大佬请指教(⊙o⊙)ノ)所用模块#监控模块from urllib import requestfrom bs4 import Bea...

weixin_39553904的博客 2095

在abaqus中利用point-based 来快捷定义螺栓连接

abaqus中可以通过point-based方式定义连接点的位置,并对连接方式进行定义,可以进行螺栓连接的模拟。 可以通过逐点输入坐标或导入外部的坐标位置 也可以通过阵列的方式定义点 定义完点后就利用create fasteners,选择point-based,选取刚才创建好的点阵列,然后定义连接的属性,如下图 定义connector section时,类型选择translator,相当于只有1方向可以动,定义弹性模量以及破坏准则。 案例操作 假如有两个板,通过...

fiber_tape的博客 7341

tkinter使用label视频播放

tkinter是python的界面开发包 使用tkinter显示视频流的一个办法是使用label来逐帧显示图片。 from Tkinter import * from PIL import ImageTk, Image import cv2 root = Tk() # Create a frame app = Frame(root, bg="white") app.grid() # Create a label in the frame lmian = Label(app) lmain.grid(

六十英里的专栏 5526

Python+selenium+phantomjs实现WordPress自动更新文章

最近突然有个想法,通过SEO一个博客,导流到微信公众号。既然是一个尝试,就没必要花费太多人工投入,或者说只能前期投入。 于是我就想到了“人生苦短,我用python”,祭出UI自动化大杀器——selenium,以及无界面浏览器——phantomjs。 本来想直接用pymysql往MySQL数据库添加值,但是作为野路子程序员,插入数据后发现网站没有新增文章。另外字段太多,光做成json格式都花了不少时间。 后来就想到selenium,于是有了这篇文章。 文章内容采集自知乎,爬虫技术就不详细说了,直接reques

Code掘金的博客 648

uniapp(全端兼容) - 最新详细实现接入腾讯视频播放器功能插件,uniapp全平台端(小程序/H5网页/App/nvu)调用引入并使用腾讯视频播放组件完整全流程(详细示例源码,一键复制开箱即用)

uniapp腾讯视频,uniapp微信小程序腾讯视频,uniapp小程序接入腾讯视频详细示例教程源码,uniapp怎么在微信小程序平台使用腾讯视频插件,在uni-app中使用腾讯视频插件播放视频,uniapp调用腾讯视频,uniapp引入腾讯视频插件,uniapp小程序中引入腾讯视频无法播放,uniapp微信小程序平台引入腾讯视频播放不了黑屏,在uniapp开发的微信小程序中使用腾讯视频,uniapp如何引入腾讯视频插件播放视频,uni-app小程序平台引入腾讯视频插件播放腾讯视频,uniapp 小程序接入

✅ 精选推荐文章 1万+

优快云/博客园等博客的文章搬家到wordpress网站

第一章、简介 由于自己建立了博客学习网站,因此想把比较典型文章,搬家到自己的网站。于是,整理了几种常用的搬家手段: 插件形式搬家 优快云的博客先转到了博客园,然后博客园备份成.xml文件,最后wordrpess 博客大巴 爬虫形式搬家 第二章、安装插件 2.1、BlogsToWordPress插件(WAX文件—>wordpress) https://bl...

xpj8888的博客 1486

Android SELinux——neverallow问题处理(十六)

遇到 neverallow 规则问题,千万别急着去注释/剔除里面原有的规则(原生的尽量别动)。增加 allow 规则是常见的解决办法,但是随着 android 版本的升级,系统对 SELinux 的管控越来越严,增加了大量的 neverallow。一般情况下,向默认标签授予权限的做法是错误的,其中许多权限都是 neverallow 规则所不允许的。按照上面方法去添加 SELinux 可能会违反了 neverallow 规则,编译时候会报 neverallow 相关的错误。

小旭的专栏 2677

【异常】API 速率限制报错问题全流程排查与解决指南 API rate limit reached. Please try again later.

摘要: 本文针对大模型API开发中常见的速率限制报错("API rate limit reached")提供全流程解决方案。首先解析该报错的本质是服务端对高频调用的保护机制,通过三步排查法确认根因:客户端请求频率超出账户阈值。提出三级解决方案:1)临时等待限流周期重置;2)升级付费账户提高调用配额;3)构建多模型容灾架构实现自动切换。建议生产环境优先采用容灾方案,通过备用API节点保障业务连续性,同时平衡不同模型服务的成本与性能。

奶爸的编程之路,也就一周冷个三天 1431

用 Python + AI 将 758 篇 WordPress 博客批量迁移到 优快云:wp_to_md 开源工具

记录了将 cstriker1407.info 上 758 篇 WordPress 博客迁移到 优快云 的完整过程。整套流程由 wp_to_posts.py 完成 .wpress 解包、HTML 转 Markdown、规则清洗三个阶段,再由 AI 批量补写摘要、分类和封面关键词,最后用 gen_covers.py 自动生成词云风格封面图。工具已开源在 GitHub,适合有类似 WordPress 迁移需求的场景。

cstriker1407的专栏 273

【数据集】3D-GloBFP:全球首个三维建筑轮廓数据集

【数据集】3D-GloBFP:全球首个三维建筑轮廓数据集

WW、forever的博客 1689

WP Githuber MD代码块支持更多编程语言

在之前的文章中我推荐过一款让wordpress中的markdown编辑器——WP githuber md。在使用的过程中,我发现该编辑器插入代码块不管你在设置中如何调整样式都无法应用(或者说是支持的语言很少)这篇文章就教大家如何让其支持更多代码的代码块插入。

hibugs 619

【技术科普】破解政务跨系统数据壁垒!亘川一网统管平台多源数据同步技术解析

本文解析亘川一网统管平台多源数据同步技术,针对政务跨系统数据壁垒难题,介绍组件的数据采集、校验、审计留痕等核心能力,结合营商环境项目落地案例,对比传统开发模式差异,讲解开源组件的实践价值,为政务项目开发者提供落地参考。

weixin_67440240的博客 635

YOLOv9改进,YOLOv9添加CBAM注意力机制

CBAM是一个简单而有效的注意力模块,用于前馈卷积神经网络。给定一个中间特征图,我们的模块按顺序推断两个独立维度(通道和空间)的注意力图,然后将注意力图乘以输入特征图以进行自适应特征细化。由于 CBAM 是一个轻量级的通用模块,因此它可以无缝集成到任何 CNN 架构中,开销可以忽略不计,并且可以与基础 CNN 一起进行端到端训练。论文链接:(CBAM论文)

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 856

如何批量导出 WordPress 的文章?

做程序员四年多的时间里,写了 400 多篇的博客和笔记,全部发表在自己的个人网站上,本地很多都没有存档。 今天突发奇想,想把网站上的所有文章全部导出到本地,方便本地的查阅和内容更新。 但是找了一圈,至今都没有专门插件可以做这件事,最后没办法只能自己研究一下。 把任务梳理拆解一下: 第一步:理清数据库表关系 第二步:导出 csv 数据到本地 第三步:编写脚本 将csv 的数据内容进行分门别类的整理生成 md 文件 1. 理清库表关系 首先明确我们的目标,是要将文章的 md 原文保存到本地,这就决定了我们需

王炳明 2874

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

程序大咖的博客集锦_更新Unity3d

程序猿去哪儿?据我所知,应该89不离10. 请根据你所使用的语言找到组织 Android eoeandroid , 前段时间当机,很慢,现在也缺乏维护,但是每天有定量Android程序猿访问,每天都有最新解答,初学者建议多上这个网站,珍惜吧,风口过了,已经没人维护,但是再过2年网站还在不在都是个大问题,例如机锋网 android sutido adt 等工具(百度网盘) iOS...

大话程序员 4746

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

python csv wordpress xmlrpc_使用 python-markdown + python-xmlrpc-wordpress 修改 wordpress 文章

使用 markdown 来编辑文章,再发布到 wordpress 上,我们做了哪些:基本完美。不过有时发布完成后,又发出了一些要修改的文字,难道再进入 wordpress 后台手动修改提交?那就违反了 懒 的这个总原则了。hexo想到了之间没有用过的 hexo 这类静态博客,试用了一下,果然很好。他能在瞬间将本地 Markdown 文件生成一下博客。每次修改后 hexo g + hexo serv...

weixin_39615984的博客 212

优快云博客搬家到WordPress

一直想把优快云上写的博客,搬家移植到自己的WordPress博客,网上介绍了一些方法,例如先把优快云博客导入博客园,然后从博客园导出xml文件,最后用WordPress导入工具导入进WordPress博客,操作步骤太繁杂。于是周末在家自己动手用Python写了爬虫脚本,利用WordPress自定义的投稿功能(wp_insert_post),导入进WordPress博客,步骤只有简单的两步:步骤

阳光岛主 6634

python wordpress xmlrpc 调用_WordPress自动发布文章-Python模块wordpress_xmlrpc

wordpress_xmlrpc模块Client类是连接登录WordPress的接口,使用该类就初始化一个wp的客户端。然后就可以通过这个客户端对wp进行相关的操作。参数说明:url:WordPress站点的xmlrpc文件所在的urlusername: 站点后台用户名password: 站点后台的密码blog_id:博客的id(WordPress会忽略这个值)(不需要填)transport: 自...

weixin_29107289的博客 829

python爬取csdn文章到wordpress

# /usr/bin/env python # coding=utf8 '''python 爬取csdn 文章到 wordpress ''' import requests import re import json import time from bs4 import BeautifulSoup from lxml import etree from wordpress_xmlrpc imp...

weixin_33812433的博客 631

python查询wordpress数据库_python爬取csdn文章到wordpress

# /usr/bin/env python# coding=utf8'''python 爬取csdn 文章到 wordpress '''import requestsimport reimport jsonimport timefrom bs4 import BeautifulSoupfrom lxml import etreefrom wordpress_xmlrpc import Client...

weixin_39718006的博客 247

wordpress批量发布文章 python_如何在WordPress中批量计划自动发布文章

最近,我们的一位用户问我们如何批量计划在WordPress中自动发布文章。在WordPress中安排文章非常简单,但如果您想一次快速安排多个草稿,该怎么办?当您有几篇文章等待发布时,批量调度会派上用场。在本文中,我们将向您展示如何轻松地在WordPress中批量计划自动发布文章。什么时候需要WordPress批量计划自动发布文章?如果您是在博客上创建和管理内容的单一作者,则可以使用WordPres...

weixin_39691233的博客 1224

python wordpress xmlrpc 批量_python使用xmlrpc自动发布文章到wordpress.html

(function(){if(''){if (prompt('请输入文章密码') !== ''){alert('密码错误!');history.back();}}})();var NexT = window.NexT || {};var CONFIG = {hostname: new URL('https://kechenhh.gitee.io').hostname,root: '/',schem...

weixin_39636245的博客 388

腾讯云python怎么用_如何使用腾讯云做博客

推荐理由:网站打开速度慢,往往让人感觉是一件比较难过的事,可见选择一个好的云服务商很重要,这次逛腾讯云技术论坛时看到这篇文章,借助腾讯云做博客,大大提升了网站打开速度和网站防护措施;所以在此推荐给大家,希望对大家有用。以下为原文章:前段时间把博客迁到了腾讯云,感觉非常棒,再也不怕网站打开速度慢,再也不怕被人DDOS,再也不怕服务商跑路了……有朋友问我是怎么在腾讯云上做博客的,专门为他写一个指引,希...

weixin_39787345的博客 353
上一篇: PHP制作一个随机图片API接口
下一篇: Python搭建多节点ping
Pythonwill
博客等级 码龄7年 56粉丝 12原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值