Python实现向QQ群成员自动发邮件的方法
本文实例讲述了Python实现向QQ群成员自动发邮件的方法。分享给大家供大家参考。具体实现方法如下:
原理:
我们需要先获取QQ群中的所有成员并保存到一个txt文本中去,然后再由python读取文件然后进行批量邮件发送了,具体解决方案如下:
1. 获取QQ群成员QQ号码,QQ群成员信息可以在如下网页中获取,选择全部成员保存在txt中即可
http://qun.qzone.qq.com/group#!/123456/member
(这里的123456为QQ群号码)
2. 解析获取的QQ群成员列表list.txt,给每个成员单独自动发送邮件,这里使用的发送方是163邮箱
完整脚本如下:
#coding:utf-8
import random
import smtplib
from email.mime.text import MIMEText
import time
def send_mail(mailto):
print 'Setting MIMEText'
CT=open('content.txt','r') #读取发送邮件内容
content=CT.read().decode('utf-8')
msg=MIMEText(content.encode('utf8'),_subtype='html')
CT.close()#关闭文件
msg['From']=mail_user
msg['SUbject']=u'Python邮件发送测试'
msg['To']=mailto
try:
print 'Connectting',mail_host
s=smtplib.SMTP_SSL(mail_host,465)
print 'Login to mail_host'
s.login(mail_user,mail_pwd)
print 'Send mail'
s.sendmail(mail_user,mailto,msg.as_string())
print 'Close the connection between the mail server'
s.close()
except Exception as e:
print "Exceptioin ",e
def sendqunmail():
try:
f=open(filelist,'r')
lines=f.readlines()
for i in range(len(lines)-1):
if lines[i].find('(')<>-1 and lines[i].find(')')<>-1:
qqnum=lines[i].split('(')[1].split(')')[0]
if qqnum.isdigit():
mailto=qqnum+'@qq.com'
print 'Sendmail to:'+mailto
send_mail(mailto)
time.sleep(10)
except Exception,ex:
print filelist,ex
if __name__=="__main__":
mail_host='smtp.163.com'
mail_user='test@163.com'
mail_pwd='test123'
filelist='list.txt'
sendqunmail()
希望本文所述对大家的Python程序设计有所帮助。
相关推荐
-
Python 关于反射和类的特殊成员方法
反射 反射即想到4个内置函数分别为:getattr.hasattr.setattr.delattr 获取成员.检查成员.设置成员.删除成员 class Dog(object): def __init__(self,name): self.name = name def eat(self): print("%s is eating..."%self.name) def run(): print("runing ....") d = Dog("lucy&qu
-
Python中的自省(反射)详解
首先通过一个例子来看一下本文中可能用到的对象和相关概念. 复制代码 代码如下: #coding: UTF-8 import sys # 模块,sys指向这个模块对象 import inspect def foo(): pass # 函数,foo指向这个函数对象 class Cat(object): # 类,Cat指向这个类对象 def __init__(self, name='kitty'): self.name = name def sayHi(s
-
python中反射用法实例
本文实例讲述了python中反射用法.分享给大家供大家参考.具体如下: import sys, types,new def _get_mod(modulePath): try: aMod = sys.modules[modulePath] if not isinstance(aMod, types.ModuleType): raise KeyError except KeyError: # The last [''] is very important! aMod = __import__(mo
-
python遍历类中所有成员的方法
本文实例讲述了python遍历类中所有成员的方法.分享给大家供大家参考.具体分析如下: 这段代码自定义了一个类,类包含了两个成员title和url,在类的内部定义了一个函数list_all_member用于输出类的所有成员变量及值 # -*- coding: utf-8 -*- class Site(object): def __init__(self): self.title = 'jb51 js code' self.url = 'http://www.jb51.net' def list_
-
详解Python中的静态方法与类成员方法
前言 因为Python的水平目前一直是处于能用阶段,平时写的脚本使用的Python的写法也比较的简单,没有写过稍微大一点的项目.对Python中的类,类之间的组织关系,整个项目中类之间如何耦合还缺乏认识.打算读一读别人写的Python代码来学习一下Python在工程中的应用,提升自己的技术水平.选取的Python代码是Python爬虫代码,github地址.这个代码刚好是符合跳出我的舒适区的水平的代码,因此很适合我目前的水平来学习. 在Python2.4之后,主要使用装饰器来实现静态方法和类方法
-
简单谈谈python的反射机制
对编程语言比较熟悉的朋友,应该知道"反射"这个机制.Python作为一门动态语言,当然不会缺少这一重要功能.然而,在网络上却很少见到有详细或者深刻的剖析论文.下面结合一个web路由的实例来阐述python的反射机制的使用场景和核心本质. 一.前言 def f1(): print("f1是这个函数的名字!") s = "f1" print("%s是个字符串" % s) 在上面的代码中,我们必须区分两个概念,f1和"f1
-
Python实现动态添加类的属性或成员函数的解决方法
某些时候我们需要让类动态的添加属性或方法,比如我们在做插件时就可以采用这种方法.用一个配置文件指定需要加载的模块,可以根据业务扩展任意加入需要的模块. 本文就此简述了Python实现动态添加类的属性或成员函数的解决方法,具体方法如下: 首先我们可以参考ulipad的实现:mixin. 这里做的比较简单,只是声明一个类,类初始化的时候读取配置文件,根据配置列表加载特定目录下的模块下的函数,函数和模块同名,将此函数动态加载为类的成员函数. 代码如下所示: class WinBAS(Bas): def
-
Python实现向QQ群成员自动发邮件的方法
本文实例讲述了Python实现向QQ群成员自动发邮件的方法.分享给大家供大家参考.具体实现方法如下: 原理: 我们需要先获取QQ群中的所有成员并保存到一个txt文本中去,然后再由python读取文件然后进行批量邮件发送了,具体解决方案如下: 1. 获取QQ群成员QQ号码,QQ群成员信息可以在如下网页中获取,选择全部成员保存在txt中即可 http://qun.qzone.qq.com/group#!/123456/member (这里的123456为QQ群号码) 2. 解析获取的QQ群成员列表l
-
python自动发邮件库yagmail的示例代码
之前使用的python的smtplib.email模块发模块的一步步骤是: 一.先导入smtplib模块 导入MIMEText库用来做纯文本的邮件模板 二.发邮件几个相关的参数,每个邮箱的发件服务器不一样,以126为例子百度搜索服务器是 smtp.126.com 三.写邮件主题和正文,这里的正文是HTML格式的 四.最后调用SMTP发件服务 一般发邮件方法 我以前在通过Python实现自动化邮件功能的时候是这样的: import smtplib from email.mime.text im
-
Python获取统计自己的qq群成员信息的方法
首先说明一下需要使用的工具以及技术:python3 + selenium selenium安装方法:pip install selenium 前提:获取自己的qq群成员信息,自己必须是群主或者管理员,然后通过管理页面进入到成员高级管理网页端,就可以对数据进行爬取了! 步骤: ①:首先安装环境 selenium库,selenium是一个自动化库,但是使用它必须用到浏览器驱动,不同的浏览器有不同的驱动,所以需自行下载,我这里是chrome浏览器. ②:运行 程序,然后会需要点击一键登录按钮,点击即
-
Python selenium 加载并保存QQ群成员,去除其群主、管理员信息的示例代码
一位伙计自己开了个游戏室,想在群里拉点人,就用所学知识帮帮忙,于是就有了这篇文章,今天小编特此通过实例代码给大家介绍下Python selenium 加载并保存QQ群成员去除其群主.管理员信息的示例代码 模拟登陆页面 页面分析 思路: 点击登陆按钮 选择要登陆的账号 代码实现 # Author:smart_num_1 # Blog:https://blog.csdn.net/smart_num_1 # WeChat:Be_a_lucky_dog from selenium import webd
-
用Python自动发邮件提醒你周末吃啥
目录 前言 实现思路 实现过程 总结 前言 前几天在Python交流群里边,大佬分享了一个有趣的代码,用于定时发送菜谱分享,觉得挺有意思,这里拿出来给大家分享. 实现思路 实现思路倒是不难,其一是Python网络爬虫,将网页上的每日一文抓取到,然后存起来到一个变量中,其二是编写发送邮件的逻辑,编辑好邮寄模板,然后将抓到的内容发送出去即可. 实现过程 这里直接上代码,如下所示: import requests, bs4 import smtplib import schedule import t
-
Python一行代码实现自动发邮件功能
1. 用Python每天给女神发送舔狗问候 用Python自动发送最基本的邮件(主题+收件人) 知识点 邮件结构 以263企业邮为例 邮件形式 内容 最基本 收件人+主题 最常用 收件人+主题+正文 一般流程申请邮件 收件人+主题+正文+抄送 发报表邮件 收件人+主题+抄送+附件 加说明报表邮件 收件人+主题+正文+抄送+附件 Python调用zmail模块 import zmail zmail.server('danzhao@sunlands.com','password').send_mai
-
9行javascript代码获取QQ群成员具体实现
昨天看到一条微博:「22 行 JavaScript 代码实现 QQ 群成员提取器」. 本着好奇心点击进去,发现没有达到效果,一是 QQ 版本升级了,二是博客里面的代码也有些繁琐. 于是自己试着写了一个,算上空行才 9 行,麻雀虽小,五脏俱全. 复制代码 代码如下: var ids = document.querySelectorAll(".member_id"); var names = document.querySelectorAll(".member_name"
-
python自动发邮件总结及实例说明【推荐】
python发邮件需要掌握两个模块的用法,smtplib和email,这俩模块是python自带的,只需import即可使用.smtplib模块主要负责发送邮件,email模块主要负责构造邮件. smtplib模块主要负责发送邮件:是一个发送邮件的动作,连接邮箱服务器,登录邮箱,发送邮件(有发件人,收信人,邮件内容). email模块主要负责构造邮件:指的是邮箱页面显示的一些构造,如发件人,收件人,主题,正文,附件等. 1.smtplib模块 smtplib使用较为简单.以下是最基本的语法. 导
-
Python自动化办公之Excel拆分与自动发邮件
目录 需求 需求解析 代码实现 需求 需要向大约 500 名用户发送带有 Excel 附件的电子邮件,同时必须按用户从主 Excel 文件中拆分数据以创建他们自己的特定文件,然后将该文件通过电子邮件发送给正确的用户 需求解析 大致的流程就是上图,先拆分 Excel 数据,提取出对应的邮件地址和用户的数据信息,再自动添加到邮件的附件当中 代码实现 首先我们先来看下我们手中 Excel 的数据形式是怎么样的 import datetime import os import shutil from p
-
如何将服务器上的python代码通过QQ发送回传信息(附实现方法)
本文介绍我使用QQ得到服务器上回传的python代码的探索历程,面向的对象是对计算机网络有一定了解的读者.期待有兴趣的人和我一起探讨! 需求来源 最近,我在跑一些数据量巨大的代码.代码在本地一运行,CPU就占满了,代码运行时间又久,因此这段时间根本用不了电脑,这对疫情在家的大学生很难受.把代码放服务器吧,又不知道什么时候能跑完,这让我很不爽.于是,我希望服务器端的代码能给我一个不错的反馈,由此我选择了QQ交互方法. 硬件工具 本地电脑一台,服务器一台(如果你只是想尝试一下,而没有服务器,可以使用
随机推荐
- angular4中关于表单的校验示例
- Mercurial入门学习介绍
- aspjpeg 添加水印教程及生成缩略图教程
- SQLite 入门教程一 基本控制台(终端)命令
- docker中编译nodejs并使用nginx启动
- CentOS 7.0下SVN服务器图文搭建教程
- Linux常用查看硬件设备信息命令大全(值得收藏)
- .NET中可空值类型【Nullable<T>】实现原理
- JS函数的几种定义方式分析
- PHP下编码转换函数mb_convert_encoding与iconv的使用说明
- Android使用ContentResolver搜索手机通讯录的方法
- jQuery实现右侧显示可向左滑动展示的深色QQ客服效果代码
- jquery 多行文本框(textarea)高度变化
- jQuery中empty()方法用法实例
- Asp.net+jquery+.ashx文件实现分页思路
- windows 服务器安全经验总结_青云原创
- php恢复数组的key为数字序列的方法
- 浅谈在vue中用webpack打包之后运行文件的问题以及相关配置方法
- android商品详情页面设计详解
- Laravel5.7 数据库操作迁移的实现方法