整理Py小demo
from email.mime.text import MIMEText
# 第一个参数就是邮件正文,第二个参数是MIME的subtype,
# 传入'plain'表示纯文本,最终的MIME就是'text/plain',最后一定要用utf-8编码保证多语言兼容性。
msg=MIMEText('Hello Send By Python123','plain','utf-8') import smtplib
server =smtplib.SMTP_SSL('smtp.qq.com',465)
server.set_debuglevel(1)
# essplrlkpwcvbfci
# server.ehlo()
# server.starttls()
server.login('912549963@qq.com','xxxx是邮箱客户端的一列序列号')
server.sendmail('912549963@qq.com','18437963713@163.com',msg.as_string())
server.quit() # from email.mime.text import MIMEText
# msg = MIMEText('hello, send by Python5656', 'plain', 'utf-8')
# import smtplib
# server = smtplib.SMTP_SSL('smtp.qq.com', 465) # SMTP协议默认端口是25
# server.set_debuglevel(1)
# server.ehlo()
# server.starttls()
# server.login('912549963@qq.com','nrabssgxathrbfhh')
# server.sendmail('912549963@qq.com','18437963713@163.com', msg.as_string())
# server.quit()
邮箱
# import urllib.request
# import re
# import os
# import urllib
# #根据给定的网址来获取网页详细信息,得到的html就是网页的源代码
# def getHtml(url):
# page = urllib.request.urlopen(url)
# html = page.read()
# return html.decode('UTF-8')
#
# def getImg(html):
# reg = r'src="(.+?\.jpg)" pic_ext'
# imgre = re.compile(reg)
# imglist = imgre.findall(html)#表示在整个网页中过滤出所有图片的地址,放在imglist中
# x = 0
# path = 'D:\\test'
# # 将图片保存到D:\\test文件夹中,如果没有test文件夹则创建
# if not os.path.isdir(path):
# os.makedirs(path)
# paths = path+'\\' #保存在test路径下
#
# for imgurl in imglist:
# urllib.request.urlretrieve(imgurl,'{}{}.jpg'.format(paths,x)) #打开imglist中保存的图片网址,并下载图片保存在本地,format格式化字符串
# x = x + 1
# return imglist
# html = getHtml("http://tieba.baidu.com/p/2460150866")#获取该网址网页详细信息,得到的html就是网页的源代码
# print (getImg(html)) #从网页源代码中分析并下载保存图片
#endregion
爬取图片 并存在本地文件夹中
from flask import Flask # 导入包 app = Flask(__name__) # 创建一个Web应用 @app.route('/') # 定义路由(Views),可以理解为定义页面的URL
def index():
return "这是用Python + Flask 搞出来的。" # 渲染页面 if __name__ == "__main__":
app.run(host='127.0.0.1',port=8080) # 运行,指定监听地址为 127.0.0.1:8080
# http://127.0.0.1:8080/ 运行这个会返回--》这是用Python + Flask 搞出来的。
创建web应用
if __name__ == '__main__':#这个其实就是在当前模块的时候,_name_的值是__main__,在其他模块引用此模块的话,name的值就是“当前”模块的值。
import urllib.request
url='http://www.sogou.com/'
local_path='E:\download.html'
urllib.request.urlretrieve(url, local_path)
把整个网页爬出来
# a=lambda x:x+2#这里的拉姆达表达示被看成一个函数了
# print(a(1))
# print(a(2))
#
# add = lambda x, y : x+y
# print(add(1,2) ) # 结果为3 # y=lambda a,b,c:(a+b)/c
# print(str(y(1,5,9))[0:5])
Lambda
# from bs4 import BeautifulSoup
# import requests
# from datetime import datetime
# import json
# import re # news_url = 'http://news.sina.com.cn/c/nd/2017-05-08/doc-ifyeycfp9368908.shtml'
# web_data = requests.get(news_url)
# web_data.encoding = 'utf-8'
# soup = BeautifulSoup(web_data.text,'lxml')
# # print(soup.select('a'))
#
# links = soup.findAll('a')
# href=soup.select('.side-tool to-top')
# print(links)
# print(href)
# print(soup.a.string)
# print(soup.a.attrs)
# title = soup.select('#artibodyTitle')[0].text
# a1 = soup.select('a')
# a = soup.select('a')[0]
# aa = soup.select('a')[0]['href']
# print(title)
# print('----------------------------------------------------')
#
# for hrefs in a1:
# print(hrefs.text)
# print(hrefs)
# a= a1.select('a')[2]['href']
# print(a)
# print(hrefs.select('.href'))
# print(a1)
# print(a)
# print(aa)
爬取网页 BeautifulSoup
from bs4 import BeautifulSoup
import requests
from datetime import datetime
import json
import re url='http://news.sina.com.cn/c/nd/2017-05-08/doc-ifyeycfp9368908.shtml'
web_Content=requests.get(url)
web_Content.encoding='utf-8'
soup=BeautifulSoup(web_Content.text,'lxml')
title=soup.select('#artibodyTitle')[0].text print(title) time = soup.select('.time-source')[0].contents[0].strip()
dt = datetime.strptime(time,'%Y年%m月%d日%H:%M')
print(dt)
时间格式化
class Foo: def __init__(self, name, age):
self.name = name
self.age = age def detail(self):
print(self.name)
print(self.age) obj1 = Foo('chengd', 18)
obj1.detail() # Python默认会将obj1传给self参数,即:obj1.detail(obj1),所以,此时方法内部的 self = obj1,即:self.name 是 chengd ;self.age 是 18 # obj2 = Foo('python', 99)
# obj2.detail() # Python默认会将obj2传给self参数,即:obj1.detail(obj2),所以,此时方法内部的 self = obj2,即:self.name 是 python ; self.age 是 99x
函数
# 在这个函数中Yield 是用来返回值得,就好比return
# def addlist(alist):
# for i in alist:
# yield i+1
#
# alist=[1,2,3]
# for x in addlist(alist):
# print(x)
print('----------12121212--------------------------------------------')
def h():
print ('To be brave')
m= yield 5656
print('Fighting!')
cc=h()
mm=cc.__next__()
# print(cc.__next__())
print(mm) print('------------------78979887--------------------------')
def h():
print ('Wen Chuan')
mm = yield 5555
print ('Fighting!') c = h()
m = c.__next__()
print('mm value is ',m) print('-------------------------------------------------------------------')
def h():
print ('Wen Chuan')
m = yield 5 # Fighting!
print (m)
d = yield 12
print ('We are together!')
c = h()
c.__next__() #相当于c.send(None)
c.send('Fighting!') #(yield 5)表达式被赋予了'Fighting!' print('-----------rrrrrrrrrrrrrrrrrrrrrrr----------------------------------------')
def h():
print ('Wen Chuan',)
mm = yield 5 # Fighting!
print (m)
ddd = yield 12
print ('We are together!')
c = h()
m = c.__next__() #m 获取了yield 5 的参数值 5 ---- 可能是遇到的第一个yield的值
d = c.send('Fighting!') #d 获取了yield 12 的参数值12 ---- send里的参数会把第一个yield替换掉。然后c.send()获取第二个yield的值
print ('We will never forget the date', m, '.', d)
# send(msg) 和 next()是有返回值的,它们的返回值很特殊,返回的是下一个yield表达式的参数
yield Next Send
整理Py小demo的更多相关文章
- Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer 关于Newtonsoft.Json,LINQ to JSON的一个小demo mysql循环插入数据、生成随机数及CONCAT函数 .NET记录-获取外网IP以及判断该IP是属于网通还是电信 Guid的生成和数据修整(去除空格和小写字符)
Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer Advanced Installer :Free for 30 da ...
- selenium 3+python3.6+firefox的windows详细环境搭建以及小demo
最近也是学习了下selenium和python,就记录了下在自己工作机上环境的搭建过程以及小demo 1,安装python3.6.1 我是去官网直接下载当前最新版的python3.6.1 官网网址为h ...
- 聊聊UDP、TCP和实现一个简单的JAVA UDP小Demo
最近真的比较忙,很久就想写了,可是一直苦于写点什么,今天脑袋灵光一闪,觉得自己再UDP方面还有些不了解的地方,所以要给自己扫盲. 好了,咱们进入今天的主题,先列一下提纲: 1. UDP是什么,UDP适 ...
- 新手 gulp+ seajs 小demo
首先,不说废话,它的介绍和作者就不在多说了,网上一百度一大堆: 我在这里只是来写写我这2天抽空对seajs的了解并爬过的坑,和实现的一个小demo(纯属为了实现,高手请绕道); 一.环境工具及安装 1 ...
- Nancy之基于Nancy.Hosting.Self的小Demo
继昨天的Nancy之基于Nancy.Hosting.Aspnet的小Demo后, 今天来做个基于Nancy.Hosting.Self的小Demo. 关于Self Hosting Nancy,官方文档的 ...
- Nancy之基于Nancy.Owin的小Demo
前面做了基于Nancy.Hosting.Aspnet和Nancy.Hosting.Self的小Demo 今天我们来做个基于Nancy.Owin的小Demo 开始之前我们来说说什么是Owin和Katan ...
- Nancy之基于Self Hosting的补充小Demo
前面把Hosting Nancy with ASP.NET.Self Hosting Nancy和Hosting Nancy with OWIN 以demo的形式简单描述了一下. 这篇是为Self H ...
- [Unity3D]做个小Demo学习Input.touches
[Unity3D]做个小Demo学习Input.touches 学不如做,下面用一个简单的Demo展示的Input.touches各项字段,有图有真相. 本项目已发布到Github,地址在(https ...
- Android -- 自定义View小Demo,动态画圆(一)
1,转载:(http://blog.csdn.NET/lmj623565791/article/details/24500107),现在如下图的效果: 由上面的效果图可以看到其实是一个在一个圆上换不同 ...
随机推荐
- BZOJ 1106: [POI2007]立方体大作战tet 树状数组 + 贪心
Description 一个叫做立方体大作战的游戏风靡整个Byteotia.这个游戏的规则是相当复杂的,所以我们只介绍他的简单规 则:给定玩家一个有2n个元素的栈,元素一个叠一个地放置.这些元素拥有n ...
- PAT_A1142#Maximal Clique
Source: PAT A1142 Maximal Clique (25 分) Description: A clique is a subset of vertices of an undirect ...
- vue 项目部署到nginx
第一步在控制台终端输入npm run build 打包完成之后项目中会生成一个dist文件夹,直接访问里面的index.html就ok了 第二步配置nginx 第三步重启nginx service n ...
- 51nod1085 背包问题【动态规划】
在N件物品取出若干件放在容量为W的背包里,每件物品的体积为W1,W2--Wn(Wi为整数),与之相对应的价值为P1,P2--Pn(Pi为整数).求背包能够容纳的最大价值. Input 第1行,2个整数 ...
- windows系统通过命令行查看配件的详细信息
今天我在工作中遇到这样一个问题:客户服务器用的是win 2012系统,不打开机箱,不借助其他类似于鲁大师软件的情况下查看内存条的详细信息 刚开始的时候我通过systeminfo命令,只能查出来总的内存 ...
- Python学习笔记之异常处理
1.概念 Python 使用异常对象来表示异常状态,并在遇到错误时引发异常.异常对象未被捕获时,程序将终止并显示一条错误信息 >>> 1/0 # Traceback (most re ...
- php unlink()函数使用
最近在写个网站,需要上传图片,如果修改图片,就图片就没有用了,会占用服务器的硬盘资源,所以想到用unlink函数删除旧照片. 问题 : unlink函数只能删除 相对于函数执行文件的相对目录 或 ...
- 字体大小之px、em、rem、pt,字号详解
PX px像素(Pixel).相对长度单位.像素px是相对于显示器屏幕分辨率而言的. 是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(Dots Pe ...
- CodeForces - 274A - k-Multiple Free Set
先上题目 k-Multiple Free Set time limit per test 2 seconds memory limit per test 256 megabytes input sta ...
- java.lang.Object 方法解析
1.clone() a.是一个native方法,效率比非native高 b.是protected 修饰的,要用他必须继承object,默认都是继承object的 c.返回是一个object 对象,需要 ...