- 博客(105)
- 收藏
- 关注
原创 <44>python学习笔记——读写csv文件
1.爬取的是http://www.xicidaili.com/wn/2.需要用的的是www.tmall.com,所以原理是用代理Ip访问www.tmall.com,如果返回状态为200,表示此代理可用,保存起来
2017-04-28 23:27:49 1766
原创 <43>python学习笔记——BeautifulSoupa
详细用法参考文档:点击打开链接主要记录各种查找用法:导入:from bs4 import BeautifulSoup对象:Tagsoup = BeautifulSoup('tag = soup.btype(tag)Tag 有两个最重要的属性:name ,attributestag.name 获取Tag的名字tag.attrs 获取Tag的属性和属性值
2017-04-01 09:53:15 663
原创 <41>python学习笔记——selenium / phantomjs
基本操作from selenium import webdriver#————————打开网页b = webdriver.Chrome()#打开浏览器b.get('https://www.baidu.com')title = b.title #获得网页titleprint(title)www = b.current_url #返回打开的网址print(www)#—————
2017-03-26 22:10:47 2374
原创 <40>python学习笔记——用python批量登陆QQ
通过这个小小的过程来学习python中鼠标键盘以及win32的使用代码1:自动化登陆单个QQ。登陆后最小化QQ界面。import win32guiimport subprocessimport timefrom pymouse import PyMousefrom pykeyboard import PyKeyboardm = PyMouse() #创建鼠标实例k = PyK
2017-03-24 10:52:30 1513
原创 <39>python学习笔记——键盘鼠标
用到的模块pyHookpyUserInputwin32guiwin32apiwin32consubprocess__________________________________________________________________一、PyUserInput安装python3.5的PyM
2017-03-24 10:52:09 1410
原创 <36>python学习笔记——论事件驱动与异步IO
事件驱动编程是一种编程范式,这里程序的执行流由外部事件来决定。常见编程范式:1 / 异步IO (只能在单线程里实现多任务的异步)适用于:很多任务,任务间高度独立(它们之间不需要互相通信,或者等待彼此)。在网络操作中非常普遍。2 / 单线程(同步)3 / 多线程回调函数Select \ Poll \ Epoll异步IOPoll和Select几乎一样,除了最大数量限制增
2017-03-19 21:27:37 618
原创 <35>python学习笔记——协程
协程是一种用户态的轻量级线程协程拥有自己的寄存器上下文和栈,能保留上一次调用时的状态。每次过程冲入时,进入上一次离开时所处逻辑流的位置。协程是串行工作,同一时间只能执行一个携程,不需要加锁。但是进行阻塞(Blocking)操作(如IO操作时)会阻塞掉整个程序。通过协程在单线程里实现并发效果。适合做高并发处理。yield关键字
2017-03-17 22:08:34 302
原创 <34>python学习笔记——mysql
百度下载安装mysql安装navicat数据库管理软件常用命令1 / 查看数据库show databases;2 / 创建数据库create database name charset utf8 ; #name :数据库名 。charset utf8 加入字符集编码,用以操作中文3 / 进入数据库use name; #name :数据库名4 / 查看
2017-03-13 17:08:20 779
原创 <34>python学习笔记——Socket
Socket 套接字用于描述ip地址和端口,是一个通信链的句柄,应用程序通常通过“套接字”向网络发出请求或者应答网络请求。socket模块是针对服务器端和客户端Socket进行【打开】【读写】【关闭】
2017-03-12 16:50:47 300
转载 <33>python学习笔记——反射
(转)对编程语言比较熟悉的朋友,应该知道“反射”这个机制。Python作为一门动态语言,当然不会缺少这一重要功能。然而,在网络上却很少见到有详细或者深刻的剖析论文。下面结合一个web路由的实例来阐述python的反射机制的使用场景和核心本质。一、前言?12345deff1()
2017-03-12 16:02:00 278
原创 <32>python学习笔记——常用模块
time & timedate 模块time获取时间戳time.time() 获取当前时间datetime.datetime.now() 获取当前时间random 随机模块random.random() 生成一个0到1的随机浮点数 0random.randrange() 可以从从制定范围内,按指定基数递增的集合中获取一个随机数。如random.randrange(10
2017-03-09 21:00:49 319
原创 <31>python学习笔记——迭代器
可直接作用于fof循环的数据类型有:一类是集合数据类型:list ,tuple,dict,set,str一类generator, 包括生成器 和 带yield的generator function这些可以直接作用与for循环的对象统称为可迭代对象: Iterable可以使用isinstance()判断一个对象是否是Iterable可以被next()函数调用并不断返回下一个值的
2017-03-09 19:29:31 335
原创 <30>python学习笔记——生成器
列表生成式[ 函数或运算方法 for 元素 in 可迭代对象 ]列表生成式依次将元素带入函数或运算方法中进行操作,并依次返回值示例1:[i*2 for i in range(10)]Out[3]: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]示例2:def add(i): i *=10 print(i)resu
2017-03-09 16:31:26 299
原创 <29>python学习笔记——装饰器
装饰器函数——用来对函数的扩展,补充。高阶函数+嵌套函数 =》装饰器原则:1 / 不能修改被装饰的函数的源代码2 / 不能修改被装饰的函数的调用方式实现装饰器的知识储备:1 / 函数即‘变量’def test(): 函数体-----------------test = '函数体'2 / 高阶函数两个条件:1 / 把一个函
2017-03-09 12:21:20 349
原创 <27>python学习笔记——如何快速找到多个字典中的的公共键key
使用集合(set)的交集操作1 / 使用字典的keys()方法,得到一个字典keys的集合2 / 使用map函数,得到所有字典的keys的集合3 / 使用reduce函数,取得所有字典的keys的集合的交集
2017-03-08 13:53:52 347
原创 <26>python学习笔记——根据字典中的值的大小进行排序
sorted的常见用法:sorted([4,7,2,9,1])Out[68]: [1, 2, 4, 7, 9]1 / 使用zip将字典数据转化成元组后排序{ x:randint(60,100) for x in 'xyzabc'}Out[69]: {'a': 75, 'b': 66, 'c': 93, 'x': 73, 'y': 71, 'z': 72}d = { x:ra
2017-03-08 13:14:27 1965
原创 <25>python学习笔记——统计序列中元素的出现频度
方法一:用字典方法统计序列中元素的出现频度ange(30)] ##创建一个随机数序列dataOut[57]: [5, 13, 0, 1, 17, 8, 7, 3, 19, 15, 19, 15, 11, 17, 16, 12, 9, 17, 4, 0, 17, 4, 1, 14, 2, 2, 6, 12, 3, 2]c = di
2017-03-08 12:53:26 541
原创 <24>python学习笔记——为元组中的每个元素命名
元组中元素的操作一般使用index获取student = ('jim',16,'male','jim8721@gmail.com')print(student[0])jimprint(student[2])male进阶方法:1 / 使用命名变量获取index,然后操作变量name,age,sex,email = range(4)student = ('jim',16,'
2017-03-08 12:35:44 685
原创 <23>python学习笔记——列表解析,字典解析,集合解析筛选元素
1 / 过滤掉列表中的负数方式1:from random import randintdata = [1,5,-3,-6,8,0,9]list = []for x in data: if x >=0: list.append(x)print(list)[1, 5, 8, 0, 9]方式二 (filter()函数)from random impor
2017-03-08 11:38:36 342
原创 前端(2)——CSS
CSS层叠样式表使用css样式的方式:HTML声明标签声明必须是HTML文档的第一行,位于标签之前,它是声明,不是标签内链样式表语法:放在HTML标签中style="属性:属性值; 属性1:属性值1;属性2:属性值2;">......嵌入样式表语法:body {属性:属性值;属性:属性值;} p{属性:属性值;属性:属性值} 需要将样式放在中
2017-03-02 16:51:45 261
原创 前端(1)——HTML标记语言
HTML的语法标记标记和被标记的内容构建html文档格式:内容标记的属性:就是用来控制内容(图像,文本等)如何的显示格式: 内容 HTML的基本结构内容文档标记,开始标记。分别位于网页的最前端和最后端。表示开始和结束内容文件头标记,用来包含文件的基本信息,比如网页的标题,关键字等。在head里面的内容不会在浏览器中显示内容标题标
2017-03-02 13:22:27 626
原创 <22>python学习笔记——爬虫4—多线程跑得快的虫子
为了爬的更快一点继续使用MongoDB队列!!!队列(queue)是一种具有先进先出特征的线性数据结构,元素的增加只能在一端进行,元素的删除只能在另一端进行。能够增加元素的队列一端称为队尾,可以删除元素的队列一端则称为队首。设置url的三种状态:等待爬取的:outstanding爬取完成的:complete正在进行的:processing失败的重置为outsta
2017-03-01 17:59:21 754
原创 <21.01>MongoDB数据库
————安装步骤:1 / mongodb安装文件下载https://www.mongodb.com/2 / 解压到D:盘,放置在D:/mongodb/目录下3 / 创建数据库存放目录,及其日志存放地址新建:D:/mongo/db 文件夹新建:D:/mongo/log.txt 文件4 / 安装mongodb服务--1 打开管理员cmd--2 跳转到D:/mon
2017-03-01 10:45:13 348
原创 <21>python学习笔记——爬虫3——断点续下
用MongoDB数据库记录已下载过的地址使用PyMongo模块直接代码:主程序:#导入需要的包from bs4 import BeautifulSoupimport osfrom BackClimb import downfrom pymongo import MongoClientimport datetime#建立一个抓图类class mzitu():
2017-03-01 09:06:45 4464
原创 <20>python学习笔记——爬虫2——反反爬
新手参考学习了http://cuiqingcai.com/3256.html,原版写的真的很好!感谢!会遇到网站反爬虫策略下面几点:1 / 限制IP访问频率,超过频率就断开连接。(这种方法解决办法就是,降低爬虫的速度在每个请求前面加上time.sleep;或者不停的更换代理IP,这样就绕过反爬虫机制啦!)2 / 后台对访问进行统计,如果单个userAgent访问超过阈值,予以封锁。
2017-02-28 22:31:14 2891 1
原创 <19>python学习笔记——爬虫1.0bata /1.1函数化
新手完全参考了http://cuiqingcai.com/3179.html?from=singlemessage&isappinstalled=1,原版请移步查看,非常详细非常好。我的第一个爬虫。一条条语句读懂了,并了解了运作的方式。仅做记录及日后翻查学习。#导入需要的包import requestsfrom bs4 import BeautifulSoupimport o
2017-02-28 22:26:59 521
原创 <17>python学习笔记——模块
容器——》 数据的封装函数——》语句的封装类——》方法和属性的封装模块——》程序的封装导入模块:import 模块名from 模块名 import 函数名模块方法调用:命名空间.方法名()if __name__ == '__main__' 测试方法()模块测试代码用途语句搜索路径可将模块放置在别的文件夹>
2017-02-27 20:34:10 297
原创 <16>python学习笔记——魔法方法
————魔法方法魔法方法总是在适当的时候被调用。__new__(cls[,...])在实例化之前调入的第一个方法,进行需要的重写操作。__init__(self[,...])构造方法init不能做任何的返回,默认返回None>>> >>> class ball: def __init__(self,name): self.name = name def
2017-02-27 19:43:40 285
原创 <15>python学习笔记——类和面向对象
————封装————继承格式:class 类名(父类名)————多态不同对象对同一方法响应不同的行为结果>>> >>> class A: def fun(self): print('A')>>> class B: def fun(self): print('B') >>> a=A()>>> b=B()>>> a.fun()A>>>
2017-02-27 14:03:49 358
原创 <13>python学习笔记——else语句 / with语句
with自动处理文件close问题原来代码:文件检测出错后要调用close关闭文件try: f= open('为什么是一个文件.txt','w') print(f.read()) f.close()except OSError as reson: print('文件错误啦\n错误的原因是:'+str(reson))finally: f.clo
2017-02-27 13:38:43 255
原创 <12>python学习笔记——异常
Python标准异常总结AssertionError断言语句(assert)失败AttributeError尝试访问未知的对象属性EOFError用户输入文件末尾标志EOF(Ctrl+d)FloatingPointError浮点计算错误GeneratorExit
2017-02-27 12:55:28 365
原创 <10>python学习笔记——os模块 / os.path模块
os会针对不同的操作系统正确的调用模块————OS模块中对于文件/目录常用的方法getcwd() 返回当前工作目录chdir(path)改变工作目录listdir(path='. ')列举制定目录中的文件名(‘ .’表示当前目录,'..'表示上一级目录)mkdir(path)创建单层目录,如该目录已存在就抛出异常makedirs(path) 递归创建
2017-02-27 11:35:49 381
原创 <9>python学习笔记——文件操作
open()open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)第二个参数:文件的打开模式‘r’ 以只读方式打开文件(默认)'w' 以写入的方式打开文件,会覆盖已存在文件'x' 如果文件已存在,使用此模式打开将引发异
2017-02-26 22:38:10 520 1
原创 <8>python学习笔记——集合set
集合 set集合也用花括号,但是没有映射关系!num = {1,2,3,4,5}>>> >>> num = {1:'one',2:'two',3:'three'}>>> num{1: 'one', 2: 'two', 3: 'three'}>>> >>> num2 = {1,2,3,4,5,3,2,6}>>> num2{1, 2, 3, 4, 5, 6}>>>
2017-02-26 21:36:41 459
原创 <7>python学习笔记——字典
字典dict(mapping) dict只有一个参数字典没有顺序,随机放置。————常用方法fromkeys(s[,v]) 创建并返回一个新的字典参数s是一个键,v是键对应的value,可选。>>> >>> dict1={}>>> dict1.fromkeys((1,2,3)){1: None, 2: None, 3: None}>>> dict1.fro
2017-02-26 00:32:54 262
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人