EDM营销:全称Email Direct Marketing,即电子邮件营销。企业可以通过使用EDM软件向目标客户发送EDM邮件,建立同目标顾客的沟通渠道,向其直接传达相关信息,用来促进销售。EDM软件有多种用途,可以发送电子广告、产品信息、销售信息、市场调查、市场推广活动信息等。
身为一名会修电脑的数据分析师,总是要想着怎样把公司电脑搞坏,顺便给公司创造点价值
刚好python有个
import smtplib
因此,就用python3.4来写这个代码
首先一个最简单的邮件发送的代码是这样子的,定义一个函数:
# 协议服务器地址、发件方邮箱前缀、发件方邮箱密码、收件方邮箱、信件标题、内容
def send_email(SMTP_host, from_account, from_passwd, to_account, subject, content):
def send_email(协议服务器, 发件人邮箱, 发件人邮箱密码, 收件人邮箱, 邮件标题, 邮件内容):
解析服务器地址,每个邮箱的服务器地址都不一样,一定要根据发件方的邮箱类型来选择服务器地址例如:
# 协议服务器地址
# smtp.163.com
# smtp.21cn.com
# smtp.sina.com.cn
# smtp.sohu.com
# smtp.126.com
# smtp.qq.com
服务器的的端口也不一样,一般都是端口25,只有qq的是465或者587
加载服务器:
email_client = smtplib.SMTP(SMTP_host,25)
账号密码登录:
email_client.login(from_account, from_passwd)
将邮件的文本信息搞进来,换点编码,中间的’plain’是文本,中间可以是html,那么你的内容content就要写成网页形式 <b>...</b>
:
msg = MIMEText(content, 'plain', 'utf-8')
邮件寄出去不是还有谁谁谁寄的么,就是下面的这个,标题、发件人、收件人,收发邮件人名的格式啊,搞进去:
from_title = from_account + "<" + from_account + "@" + from_postfix + ">"
msg['Subject'] = Header(subject, 'utf-8')
msg['From'] = from_account
msg['To'] = to_account
寄出去:
email_client.sendmail(from_account, to_account, msg.as_string())
email_client.quit()
记得关闭邮件
这样子一个很简单的邮件发送系统就出来了
看看主函数:
if __name__ == "__main__":
send_email("smtp.163.com","xxxxx@163.com","password","xxxxx@126.com","test","hellow")
完整的简单发邮件代码:
import smtplib
from email.mime.text import MIMEText
from email.header import Header
def send_email(SMTP_host, from_account, from_passwd, to_account, subject, content):
email_client = smtplib.SMTP(SMTP_host)
email_client.login(from_account, from_passwd)
# create msg
msg = MIMEText(content, 'plain', 'utf-8')
msg['Subject'] = Header(subject, 'utf-8') # subject
msg['From'] = from_account
msg['To'] = to_account
email_client.sendmail(from_account, to_account, msg.as_string())
email_client.quit()
if __name__ == "__main__":
send_email("smtp.163.com","xxxxx@163.com","password","xxxxx@126.com","test","hellow")
————————————–我是快乐的分割线————————————–
上面的那个发邮件的是很简单很简单的,没有批量,没有详细解说,我是不会满意这样的东西,那么,看我神一样的代码
首先,你们要注意到,qq邮箱发邮件有一个很重要的BUG
如果没有解决那么QQ邮箱无法登陆
为什么一定需要QQ邮箱呢?
因为!
用这个服务器QQ只接受来自QQ的邮件,163以及其他的他都不接受!!!
所以一定要用QQ邮箱
打开QQ邮箱–设置–账户
一定要开启下面那两个服务,因为开启这两个服务才能使用QQ邮箱发
要发短信的,发完点击我已发送,QQ会给一个16位的字母给你
注意注意注意注意注意注意注意注意注意注意,这个才是QQ邮箱发邮件的密码密码密码密码密码密码密码密码密码密码密码密码密码密码密码密码密码密码密码
好,得到这个密码后,我再将其他163的邮箱放进来
因为单个邮箱每天上限200个,发200肯定被封,你不希望自己的邮箱被封吧
所以要多个邮箱发
而且是发给多个用户,那么新建两个excel表格,打开读取里面的账号密码:
from openpyxl import load_workbook
try:
# 读取发件人邮箱
wb = load_workbook(filename=r'../fromemail.xlsx') ##读取路径
ws = wb.get_sheet_by_name("Sheet1") ##读取名字为Sheet1的sheet表
# 建立邮箱账号密码数组
fromemail_qqaccount = []
fromemail_qqpasswd = []
fromemail_othaccount = []
fromemail_othpasswd = []
for row_A in range(2, 100): ## 遍历第2行到100行
qqacc = ws.cell(row=row_A, column=1).value ## 遍历第2行到100行,第1列
qqpas = ws.cell(row=row_A, column=2).value ## 遍历第2行到100行,第2列
othac = ws.cell(row=row_A, column=3).value ## 遍历第2行到100行,第3列
othpa = ws.cell(row=row_A, column=4).value ## 遍历第2行到100行,第4列
if qqacc:
fromemail_qqaccount.append(qqacc)
fromemail_qqpasswd.append(qqpas)
if othac:
fromemail_othaccount.append(othac)
fromemail_othpasswd.append(othpa)
# 判断是否有qq邮箱,如果没有则退出程序
if len(fromemail_qqaccount) == 0:
input('没有qq邮箱或者qq邮箱写入的格式不对,请插入或改正...')
exit()
# 读取收件人邮箱
wb = load_workbook(filename=r'../toemail.xlsx') ##读取路径
ws = wb.get_sheet_by_name("Sheet1") ##读取名字为Sheet1的sheet表
# 建立收件人邮箱账号数组
toemail_account = []
for row_B in range(2, 10000): ## 遍历第2行到10000行
emaacc = ws.cell(row=row_B, column=1).value ## 遍历第2行到10000行,第1列
if emaacc:
toemail_account.append(emaacc)
except:
input('写入excel的格式不对,请查证...')
exit()
我的excel格式是这样子的:
这里就不解释啦,读取excel我以前的博文就有详细解释
那么内容content我也写进了txt记事本里面:
第一行是标题,后面是内容代码如下:
try:
file = open('../content.txt', 'r')
data = file.read().split('\n')
subject = '标题'
content = '正文'
if data[0] != '':
for j in range(0, len(data)):
if j == 0:
# 邮件标题
subject = data[0]
elif j > 0:
if j == 1:
# 邮件正文
content = data[1]
if j > 1:
content = str(content) + '\n' + data[j]
else:
pass
file.close()
except:
input('写入txt的格式不对,请改正...')
exit()
如果标题和内容是空的,那么我就自己给一个标题和内容:
subject = '标题'
content = '正文'
因为涉及到换行写入,所以有:
content = str(content) + '\n' + data[j]
好滴,这些东西统统加进去,感觉这个EDM系统做得不错了
但是但是,呵呵哒,突然发现登录的时候直接写邮箱会出现错误,也就是这样子:,但是还有,我要发图片怎么办
我把图片存到pic文件夹
发图片只能是用html来写,也就是我前文写到的html格式
那么函数要写成:
# 登录之前不变...
email_client.login(from_account, from_passwd)
msg = MIMEMultipart('related')
fp = open('../pic/图片.jpg', 'rb')
msgImage = MIMEImage(fp.read())
msgImage.add_header('Content-ID', 'weekly')
msg.attach(msgImage)
fp.close()
msg.attach(MIMEText("<b>" + content + "</b>" + "<br><img src=\"cid:weekly\">", 'html', 'utf-8'))
嗯,这样子就可以发图片了:
好滴,但是前面有提到qq邮箱只能用qq邮箱来发
那么我写了一个想法
当邮箱是qq邮箱的时候只能用qq邮箱,出错了退出程序
当邮箱不是qq邮箱的时候用其他邮箱来发,出错了再用QQ邮箱来发,再出错就退出程序
那么就准备了一大堆邮箱,循环发,首先判断是不是qq邮箱:
if 'qq' in toemail_account[i]:
print('用了qq邮箱...')
# 定义协议地址
SMTP_host = 'smtp.qq.com'
# 取得@前面的东西
from_account = re.compile(r'(.*)@(.*)').search(fromemail_qqaccount[int(count_1) - 1]).group(1)
# 取得@后面的东西,等同于下面的语句
# from_postfix = re.compile(r'(.*)@(.*)').search(fromemail_qqaccount[i]).group(1)
from_postfix = 'qq.com'
# 密码
from_passwd = fromemail_qqpasswd[int(count_1) - 1]
# print('读取第count_1 - 1个qq的账号和密码')
# 收件人地址
to_account = toemail_account[i]
# print('用第count_1 - 1个qq的账号和密码发送邮件')
send_email(SMTP_host, from_account, from_passwd, to_account, subject, content)
这是很简单的判断读取excel的邮箱的东西啦,不多说
要说的是我要循环利用发件人的邮箱,那么就要有个判断,当循环到头的时候要重新循环,所以就有了那个count_1,最主要的是在这里:
if count_1 % int(len(fromemail_qqaccount)) == 0:
# 循环够了,要初始化count_1
count_1 = 1
else:
count_1 = count_1 + 1
整除即可
如果收件人不是qq邮箱,那么来:
else:
# 收件人地址
to_account = toemail_account[i]
# 取得地址协议
if '163' in toemail_account[i]:
SMTP_host = 'smtp.163.com'
elif 'sina' in toemail_account[i]:
SMTP_host = 'smtp.sina.com.cn'
elif '126' in toemail_account[i]:
SMTP_host = 'smtp.126.com'
elif 'sohu' in toemail_account[i]:
SMTP_host = 'smtp.sohu.com'
# 取得@前面的东西
from_account = re.compile(r'(.*)@(.*)').search(fromemail_othaccount[int(count_2) - 1]).group(1)
# 取得@后面的东西,等同于下面的语句
from_postfix = from_postfix = re.compile(r'(.*)@(.*)').search(fromemail_othaccount[int(count_2) - 1]).group(2)
# 密码
from_passwd = fromemail_othpasswd[int(count_2) - 1]
# print('读取第count_2 - 1个邮箱的账号和密码')
# print('用第count_2 - 1个邮箱的账号和密码发送邮件')
send_email(SMTP_host, from_account, from_passwd, to_account, subject, content)
if count_2 % int(len(fromemail_othaccount)) == 0:
# 循环够了,要初始化count_2
count_2 = 1
else:
count_2 = count_2 + 1
这样子这个程序挺像样子了
但是!
我是数据分析师
我很追求完美
万一中间程序断了怎么办,我怎么知道哪些人发了邮件哪些人没发?
呵呵哒,创建一个finish.txt,每发一个保存一个:
# 记录下已经发送的邮件
save_finish = '../finish.txt'
read_finish = open(save_finish, 'r').read()
txt_finish = str(read_finish)
# 以写入的方式打开txt,在上面记录的内容后面继续添加新内容
file_finish = open(save_finish, 'w')
txt_finish = str(txt_finish) + '\n' + str(to_account)
file_finish.write(txt_finish)
file_finish.close()
最后成功运行:
————————–我是快乐的分割线—————————
EDM营销,满满的利润来了
最后为什么没有贴出完整代码,因为商业机密啊
我是收了钱的啊
思路都给了
还不满足啊
要不你可以去买收钱的啊
https://help.aliyun.com/document_detail/29421.html
爬虫代码不知道怎么写
关注公众号让作者帮你解决!
![]() |
在使用 `import org.apache.spark.ml.feature.VectorAssembler` 转换特征后,想要放入 `import org.apache.spark.mllib.classification.SVMWithSGD` 去训练的时候出现错误 阅读全文 » |
![]() |
Python3 打包exe方式 阅读全文 » |
![]() |
《漫威》系列电影中,距离《复仇者联盟4》上映一周,豆瓣分都是8.1分的钢铁侠》和《复仇者联盟3》,《钢铁侠》有353695人评价打分,《复仇者联盟3》有557491人评价打分,这两部电影是否一样好看? 阅读全文 » |
![]() |
昨天收到公众号粉丝的爬虫需求:抓取平台:天猫或者淘宝;爬取对象:某个商品的各分类的价格和库存数 阅读全文 » |
![]() |
在flask页面下载excel 阅读全文 » |
![]() |
java.lang.NoSuchMethodError: org.apache.spark.sql.DataFrameNaFunctions.fill(JLscala/collection/Seq;)Lorg/apache/spark/sql/Dataset 阅读全文 » |
![]() |
import org.apache.spark.ml.feature.{HashingTF, IDF}库中,TFIDF结果的字段含义 阅读全文 » |
![]() |
spark读CSV为Dataframe和spark将Dataframe写入CSV 阅读全文 » |
![]() |
将dataframe利用pyspark列合并为一行,类似于sql的GROUP_CONCAT函数。spark和pyspark的方式不能共用 阅读全文 » |
![]() |
想看下最近房价是否能入手,抓取链家二手房、新房的信息,发现广州有些精装修88平米的3房2厅首付只要 29 万,平均 1.1万/平,果然钱不够信息来凑,总能发现便宜的房子! 阅读全文 » |
![]() |
hive新建分区表 阅读全文 » |
![]() |
hive删除表和表中的数据,以及按分区删除数据 阅读全文 » |
![]() |
csdn目前设置每日使用5次后必须登录才能看到阅读更多的内容,异常恶心。因此搜罗了方法去解决这个问题 阅读全文 » |
![]() |
pandas和spark的dataframe互转 阅读全文 » |
![]() |
需要将代码转换为html使其显示好看一些,可以在这里进行装换 阅读全文 » |
![]() |
需要调用命令行来执行某些命令,主要是用subprocess实时获取结果和捕获错误,发现subprocess的很多坑 阅读全文 » |
![]() |
ubuntu的vim取消缩进 阅读全文 » |
![]() |
需要实现两台机器的信息交互,使用 `socket` 进行调度 阅读全文 » |
![]() |
centos7开放端口和防火墙设置 阅读全文 » |
![]() |
python获取set-cookies 阅读全文 » |
![]() |
记录在TensorFlow中使用GPU的一些操作 阅读全文 » |
![]() |
pandas的apply操作类似于Scala的udf一样方便 阅读全文 » |
![]() |
将dataframe利用pandas列合并为一行,类似于sql的GROUP_CONCAT函数 阅读全文 » |
![]() |
python读取了一个list是字符串形式的[11.23,23.34],想转换成list类型 阅读全文 » |
![]() |
python中使用了pandas的一些操作,特此记录下来。 阅读全文 » |
![]() |
python中使用了numpy的一些操作,特此记录下来。 阅读全文 » |
![]() |
Python3+Flask+uwsgi部署web服务,实现在新的IP下打开网址 阅读全文 » |
![]() |
在python中,需要将整数均分成N等分。python divide integers N equal parts sum 阅读全文 » |
![]() |
在Windows7下需要安装pyspark,写下教程步骤 阅读全文 » |
![]() |
对于python数组的操作有点混乱,所以特此记录下来 阅读全文 » |
![]() |
马尔科夫链转移矩阵计算方式 阅读全文 » |
![]() |
需要将dataframe中的某一行变换为列 阅读全文 » |
![]() |
scala获取某个时间间隔的时间 阅读全文 » |
![]() |
Linux查看文件夹大小 阅读全文 » |
![]() |
需要对dataframe按照某几列为key,对另外几列进行计算,考虑到scala的reduceByKey比groupByKey快速很多,所以使用了这个操作 阅读全文 » |
![]() |
需要将Spark Dataframe转换为Scala Map集合 阅读全文 » |
![]() |
Caused by: org.elasticsearch.hadoop.EsHadoopException: Could not write all entries [1/1] (Maybe ES was overloaded?). Error sample... 阅读全文 » |
![]() |
spark调用distinct只能删除完全相同的行,而需要一种方法按照某几列作为唯一ID来删除重复,利用dropDuplicates可以完美解决这个问题 阅读全文 » |
![]() |
spark调用elsticsearch的API对elasticsearch进行增删查改 阅读全文 » |
![]() |
在 hadoop中,基于Linux命令可以给hdfs创建文件和文件夹,或者删除文件和文件夹 阅读全文 » |
![]() |
spark调用hdfsAPI查询文件名字、删除文件 阅读全文 » |
![]() |
hadoop使用出现安全模式错误Name node is in safe mode,退出安全模式 阅读全文 » |
![]() |
在提取dataframe里面的列时,需要传入不定参数,即dataframe.select(args) 阅读全文 » |
![]() |
github pages一直想添加代码高亮highlighter,基于jekyll 3.0的rouge终于搞定了 阅读全文 » |
![]() |
System memory * must be at least *.Please increase heap size using the --driver--memory option or spark.driver.memory 阅读全文 » |
![]() |
python万能库 阅读全文 » |
![]() |
spark计算两个DataFrame的差集、交集、合集 阅读全文 » |
![]() |
记录Linux查看的系统的命令,Linux查看系统、核数、CPU、位数 阅读全文 » |
![]() |
任何一个电子商务公司想要存活下去,必须要时时掌控市场的动态,淘宝天猫上面的商品数据刚好能满足这样子的需求,所以写下这篇抓取教程 阅读全文 » |
![]() |
特定环境下需要安装Linux suse 11 sp1,走过太多的坑,所以记录下安装的过程方便以后再使用 阅读全文 » |
![]() |
在抓取网页的时候只想抓取主要的文本框,所以用了一个比较暴力的方法去识别 阅读全文 » |
![]() |
在抓取网页的时候只想抓取主要的文本框,所以用了一个比较暴力的方法去识别 阅读全文 » |
![]() |
python之BeautifulSoup使用 阅读全文 » |
![]() |
selenium操控浏览器下拉到页面最底端 阅读全文 » |
![]() |
一种去除dataframe中null、NaN和空字符串的方法,基于scala下 阅读全文 » |
![]() |
chardet库是python的字符编码检测器,能够检测出各种编码的类型 阅读全文 » |
![]() |
记录python读写2003和2007版本的excel的一些方式 阅读全文 » |
![]() |
scala时间和时间戳互转 阅读全文 » |
![]() |
在给代码带包成jar后,放到环境中运行出现No FileSystem for scheme file错误,找到解决办法 阅读全文 » |
![]() |
在spark中给dataframe增加一列的方法一般使用withColumn,但是个人感觉少了很多功能,不如使用udf 阅读全文 » |
![]() |
Scala查询dataFrame结构 阅读全文 » |
![]() |
在使用数据库的时候,需要将查询出来的一列按照逗号合并成一行 阅读全文 » |
![]() |
日志文件太多,需要清空 阅读全文 » |
![]() |
安装了 `ubuntu-14` ,为了连接 `xshell` ,做出的一些配置 阅读全文 » |
![]() |
在scala里面存在 调用Linux命令行的函数,得到返回的结果 阅读全文 » |
![]() |
在scala中远程连接Linux,并发送相关命令到Linux上,得到返回的结果 阅读全文 » |
![]() |
`spark` 中的 `reduce` 非常的好用,`reduce` 可以对 `dataframe` 中的元素进行计算、拼接等等 阅读全文 » |
![]() |
很多人的个人博客用的是多说评论,但是最近多说突然说要关闭了... 阅读全文 » |
![]() |
网上很多人问绑定域名要不要备案,很多人的回答是... 阅读全文 » |
![]() |
从数据库提取出来的时间为 `String` 格式,现在需要转换为 `date` 并提取出里面的 *小时* 时间段 阅读全文 » |
![]() |
为了加密 `.py` 文件,以前一般使用打包成exe ,但是最近发现可以将其编译成二进制文件pyc,虽然反编译难度不大,但是也需要一些水平 阅读全文 » |
![]() |
python批量启动多线程 阅读全文 » |
![]() |
Linux发现ctrl+c无法中断程序 阅读全文 » |
![]() |
scala中spark运行内存不足 阅读全文 » |
![]() |
scala打包jar并在Linux下运行 阅读全文 » |
![]() |
scala的input 阅读全文 » |
![]() |
scala的break和continue 阅读全文 » |
![]() |
scala合并Array 阅读全文 » |
![]() |
scala读取配置文件 阅读全文 » |
![]() |
scala读取解析json文件 阅读全文 » |
![]() |
scala判断数据类型 阅读全文 » |
![]() |
IntelliJ的Scala配置 阅读全文 » |
![]() |
scala的map操作 阅读全文 » |
![]() |
python获取当前路径 阅读全文 » |
![]() |
python的StringIO 阅读全文 » |
![]() |
此方法相当于 `Linux` 系统下的`diff`,或者是 `git` 下的 `checkout` 阅读全文 » |
![]() |
Linux查找文件内容 阅读全文 » |
![]() |
python日志syslog运用 阅读全文 » |
![]() |
python连接Linux命令行 阅读全文 » |
![]() |
由于 `python` 频繁打印会导致IDE或者系统奔溃,因此将其打印信息写入日志文件中 阅读全文 » |
![]() |
scala安装教程图文解说 阅读全文 » |
![]() |
python获取当前运行程序的名字 阅读全文 » |
![]() |
python获取文件夹名字 阅读全文 » |
![]() |
python时间和时间戳互转 阅读全文 » |
![]() |
python判断文件是否存在 阅读全文 » |
![]() |
python创建递归文件夹 阅读全文 » |
![]() |
sklearn的kmeans测试代码 阅读全文 » |
![]() |
当使用库的时候,需要传递不确定个数的参数,那么写法是怎样的? 阅读全文 » |
![]() |
python安装万能仓库的whl文件出错,原来是文件名弄错了 阅读全文 » |
![]() |
安装sklearn库需要很多前提条件,而且不能pip3 install sklearn,因此写下教程 阅读全文 » |
![]() |
Oracle查询得到的时间都是1970...,在python下将其转为时间戳 阅读全文 » |
![]() |
过年很多人会发微信的红包,但是为毛很多人说自己得不到最佳,因此作者写了一个微信红包发送的算法 阅读全文 » |
![]() |
在Linux下安装python3且不影响系统的python2 阅读全文 » |
![]() |
hadoop完全分布式搭建 阅读全文 » |
![]() |
最为广泛的两种分类模型是决策树模型(Decision Tree Model)和朴素贝叶斯模型(Naive Bayesian Model,NBM),本文讲解朴素贝叶斯 阅读全文 » |
![]() |
数据挖掘中的ID3决策树算法,再次进行一个初步的学习 阅读全文 » |
![]() |
虚拟机VMwareWorkstation下安装Linux系统centOS 阅读全文 » |
![]() |
微信小程序在2017-01-09正式上线,本着跟上时代潮流的精神,写一份教程来看看 阅读全文 » |
![]() |
埃拉托斯特尼筛法,简称埃氏筛或爱氏筛,是一种由希腊数学家埃拉托斯特尼所提出的一种简单检定素数的算法。要得到自然数n以内的全部素数,必须把不大于根号n的所有素数的倍数剔除,剩下的就是素数 阅读全文 » |
![]() |
层次聚类是另一种主要的聚类方法,它具有一些十分必要的特性使得它成为广泛应用的聚类方法 阅读全文 » |
![]() |
K近邻(KNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一 阅读全文 » |
![]() |
以前使用聚类是用spss,现在用python自己写了一次 阅读全文 » |
![]() |
大数据时代开始流行推荐算法,所以作者写了一篇教程来介绍FP-tree推荐算法 阅读全文 » |
![]() |
学习了一些chrome插件的基本用法 阅读全文 » |
![]() |
大数据时代开始流行推荐算法,所以作者写了一篇教程来介绍apriori推荐算法 阅读全文 » |
![]() |
海龟画图很好看,试着玩了一下 阅读全文 » |
![]() |
做github静态博客,学习安装jekyll 阅读全文 » |
![]() |
在破解Amazon的验证码的时候,利用机器学习得到验证码破解精度超过70%,主要是训练样本不够,如果在足够的样本下达到90%是非常有可能的。 阅读全文 » |
![]() |
妹子要去招聘会工作,奈何网上仅仅提供招聘会的公司名字,没有提供招聘的职位,SO我写了个小代码给妹子在智联上面搜索职位,由于时间紧迫,前程的就不写了 阅读全文 » |
![]() |
selenium设置浏览器属性 阅读全文 » |
![]() |
javascript获取浏览器属性 阅读全文 » |
![]() |
javascript操控浏览器 阅读全文 » |
![]() |
为了获取网站js渲染后的html,需要利用selenium加载网站,但是会出现加载时间过长的现象,因此可以限制其加载时间以及强制关掉加载 阅读全文 » |
![]() |
win10安装配置golang 阅读全文 » |
![]() |
pycharm基本设置,省得每次都要去网上找 阅读全文 » |
![]() |
百度指数抓取,再用图像识别得到指数 阅读全文 » |
![]() |
selenium之xpath定位和input文本 阅读全文 » |
![]() |
selenium在同一浏览器下多个窗口切换 阅读全文 » |
![]() |
selenium识别下拉框 阅读全文 » |
![]() |
假如外出工作,需要在另一台电脑上面pull自己的某个git远程项目到本地 阅读全文 » |
![]() |
妹纸推荐书籍《御伽草纸》,网上找了很久都找不到下载,估计是被Amazon版权了,但是在网易云阅读看到有书,所以就写个代码下载下来。 阅读全文 » |
![]() |
标签云是现在大数据里面最喜欢使用的一种展现方式,其中在python3下也能实现标签云的效果 阅读全文 » |
![]() |
RGB颜色对照图 阅读全文 » |
![]() |
python3的多线程很多人无法理解是怎么运行的,因此本文从程序猿的日常生活出发,写了一个由浅入深的多线程教程,这样子大家就不会觉得陌生了,多线程真的很简单很简单! 阅读全文 » |
![]() |
selenium是处理异步加载的一种方法 阅读全文 » |
![]() |
python数据库操作pymysql 阅读全文 » |
![]() |
详解如何搞定瀑布流 阅读全文 » |
![]() |
详解如何搞定瀑布流 阅读全文 » |
![]() |
java从零到变身爬虫大神 阅读全文 » |
![]() |
github上传本地项目 阅读全文 » |
![]() |
没事玩了一下matlab 阅读全文 » |
![]() |
mysql在大学学了,现在忘记得差不多了,复习复习一下 阅读全文 » |
![]() |
css初学 阅读全文 » |
![]() |
学习了一些html的基本用法 阅读全文 » |
![]() |
学习了一些html的基本用法 阅读全文 » |
![]() |
学习了一些html的基本用法 阅读全文 » |
![]() |
EDM营销:全称Email Direct Marketing,即电子邮件营销 阅读全文 » |
![]() |
老板要画雷达图,但是数据好多组怎么办?不能一个一个点excel去画吧,那么可以利用python进行批量制作 阅读全文 » |
![]() |
markdown初学 阅读全文 » |
![]() |
在上一篇算法中,逻辑回归作为一种二分类的分类器,一般的回归模型也是是判别模型,也就根据特征值来求结果概率。形式化表示为 p(y|x;θ),在参数 θ 确定的情况下,求解条件概率 p(y|x) 。 阅读全文 » |
![]() |
在上一篇算法中,线性回归实际上是 连续型 的结果,即 y∈R ,而逻辑回归的 y 是离散型,只能取两个值 y∈{0,1},这可以用来处理一些分类的问题。 阅读全文 » |
![]() |
今天我们这里要讲第一个有监督学习算法,他可以用于一个回归任务,这个算法叫做 线性回归 阅读全文 » |
网站已运行
公元 年 月 农历年 年
|