05 2017 档案
摘要:无标题文档 one two three 广告 目前正在学习css定位.... 目前正在学习css定位.... 目前正在学习css定位.... 目前正在学习css定位.... 目前正在学习css定位.... 目前正在学习css定位....
阅读全文
摘要:无标题文档 这个是一个div 这个是二个div 盒子练习 无标题文档 用户名 密 码 ...
阅读全文
摘要:无标题文档 seven步诗 煮豆燃豆萁,豆在釜中泣。 本是同根生,相煎何太急。
阅读全文
摘要:无标题文档 这个是第一个div标签... 这个是第二个div标签... 这个是一个span标签 新闻标题
阅读全文
摘要:例子: 方式2:使用 例子: 第三种方式:直接在html标签使用style属性编写。 只能用于本标签中,复用性较差。 不推荐使用。 例子: ...
阅读全文
摘要:无标题文档 标签 常用的属性: action: 该属性是用于指定提交数据的地址。 method: 指定表单的提交方式。 get : 默认使用的提交方式。 提交的数据会显示在地址栏上。 post : 提交的数据不会显示在地址栏上。 注意: 表单项的数据如果需要提交到服务器上面,那么表单...
阅读全文
摘要:无标题文档 表格标签 表格使用到的标签: 表格 行 单元格 表头 默认的样式是居中,加粗。 表格的标题 表格常用的属性: border 设置表格的边框 width : 设置表格的宽度 height: 设置表格的高度的。 colspan: 设置单元格...
阅读全文
摘要:无标题文档 图片标签: img标签常用的属性: width: 设置图片宽度 height 设置图片高度 alt: 如果图片资源无法找到,那么就显示对应的文字对图片进行说明。 热点图: -->
阅读全文
摘要:无标题文档 超链接标签 a标签常用的属性: href : 用于指定链接的资源 target: 设置打开新资源的目标。 _Blank 在独立的窗口上打开新资源 _self 在当前窗口打开新资源 file: file协议(文件协议)这种协议主要是用于搜索本地机器的资源文件的。 格式: file:\\\f:\美女\1.jpg a...
阅读全文
摘要:无标题文档 飘动标签 direction : 指定飘动的方向 scrollamount : 指定飘动的速度。 loop :指定飘动的次数 --> 我飞起来了...
阅读全文
摘要:无标题文档 段落标签是使用<p>标"签" 该毛衣的价格:¥298 >该书版权归属于:©张孝祥 本次活动最后的解释器归属于:®传智播客
阅读全文
摘要:html常用的标签 ~ 表示是一个标题 段落标签 水平线标签 换行标签 下标 上标 原样标签: 原样标签会保留空格和换行符。 有序的列表标签、 无序的列表标签。 项目列表标签(dl dt dd) dd比dt多锁紧一个tab 行内标签(span) ...
阅读全文
摘要:html 语言就是开发网页的基础语言: html(超文本标记语言) 标记 : 该门语言是有标签来构成的。 学习html不用怎么去理解,只要需要记住标签的作用即可。 html语言的特点: 1. html语言是与平台无关的,任何平台只需要安装了浏览器都可以运行。 2.html 是不区分大小写的。 htm
阅读全文
摘要:网站的类别: 静态网站: 静态网页中的数据都是写死的,如果需要修改网页的内容是需要直接修改网页的代码。 是没有数据库提供数据给它。 动态网站: 动态网站的数据是来自于数据库的,背后是有一个后台程序管理页面中数据的。
阅读全文
摘要:软件的结构: C/S(Client Server)结构的软件: 比如: QQ、 极品飞车、 飞信 、 迅雷 cs结构的软件的缺点:更新的时候需要用户下载更新包然后再安装,程序员则需要开发客户端与服务端。 cs结构软件的优点: 减轻服务端的压力,而且可以大量保存数据在客户端。 B/S(Browser
阅读全文
摘要:支持命令行选项有: --help或-h列出所有可能的命令行选项。立即停止,不会运行一个脚本作为参数传递。 --version或-v打印的版本PhantomJS。立即停止,不会运行一个脚本作为参数传递。 --debug=[true|false]输出额外的警告和调试信息,默认false。 也接受:[ye
阅读全文
摘要:PyQuery是强大而又灵活的网页解析库,如果你觉得正则写起来太麻烦,如果你觉得BeautifulSoup语法太难记,如果你熟悉jQuery的语法 那么,PyQuery就是你绝佳的选择。 一、初始化方式,有三种,可以传入字符串,传入url,传入文件。 字符串初始化 html = ''' first item second item ...
阅读全文
摘要:selenium用法详解 selenium主要是用来做自动化测试,支持多种浏览器,爬虫中主要用来解决JavaScript渲染问题。 模拟浏览器进行网页加载,当requests,urllib无法正常获取网页内容的时候 一、声明浏览器对象 注意点一,Python文件名或者包名不要命名为selenium,会导致无法导入 from selenium import webdriver #webdrive...
阅读全文
摘要:PyCharm3.0默认快捷键(翻译的) PyCharm Default Keymap 1、编辑(Editing) Ctrl + Space 基本的代码完成(类、方法、属性)Ctrl + Alt + Space 快速导入任意类Ctrl + Shift + Enter 语句完成Ctrl + P 参数信
阅读全文
摘要:1 # 目标:抓取今日头条关键字美图 2 # 思路: 3 # 一、分析目标站点 4 # 二、构造ajax请求,用requests请求到索引页的内容,正则+BeautifulSoup得到索引url 5 # 三、对索引url请求,得到图片url与标题,下载并保存到数据库,本次使用MongDB 6 # 四、开启循环与多进程,对多页内容遍历与抓取 7 8 #问题一、为什...
阅读全文
摘要:Python的字典和JSON在表现形式上非常相似 #这是Python中的一个字典 dic = { 'str': 'this is a string', 'list': [1, 2, 'a', 'b'], 'sub_dic': { 'sub_str': 'this is sub str', 'sub_
阅读全文
摘要:在XHR诞生前,网页要获取客户端和服务器的任何状态更新,都需要刷新一次,在XHR诞生后就可以完全通过JS代码异步实现这一过程。XHR的诞生也使最初的网页制作转换为开发交互应用,拉开了WEB2.0的序幕。 XHR是一种浏览器API,极大简化了异步通信的过程,开发者并不需要关注底层的实现,因为浏览器会为
阅读全文
摘要:Pool类 在使用Python进行系统管理时,特别是同时操作多个文件目录或者远程控制多台主机,并行操作可以节约大量的时间。如果操作的对象数目不大时,还可以直接使用Process类动态的生成多个进程,十几个还好,但是如果上百个甚至更多,那手动去限制进程数量就显得特别的繁琐,此时进程池就派上用场了。 P
阅读全文
摘要:1 #requests+正则表达式提取猫眼电影top100 2 import requests 3 import re 4 import json 5 from requests.exceptions import RequestException 6 from multiprocessing import Pool 7 8 def get_one_page(url): 9 ...
阅读全文
摘要:出于对自己对多进程和多线程概念理解的怀疑,便花时间深入学习了一下。我的目的是将一个生动的围绕CPU运行的动作模型描述出来。我们先看专业书上是怎么解释的——进程是资源分配的最小单位,线程是CPU调度的最小单位——。只要能把这句话理解了,那也就对多进程与多线程理解的差不多了。 我们来看一下操作系统是怎么
阅读全文
摘要:import threading #第一步,定义需要多线程运行的函数 def test(i): print(1) list1 = []#创建存放多线程的列表 #第二步,生成。分别建立多个线程,a,b同时执行一个相同的任务 for i in range(10): th = threading.Thread(target = test,args=[i])#这里的th就是生成的多...
阅读全文
摘要:一个程序可以理解为一个进程,这个进程有其代号,可以依据这个代号将其杀死。 一个进程肯定有且只有一个主线程,他可以有很多子线程。 运行一个任务如果可以有许多子线程同时去做,当然会提高效率。 但是,在python中,多线程其实不是严格意义上的多线程。 因为,python有一个全局锁的概念,它保证在某一个
阅读全文
摘要:使用Python写文件的时候,或者将网络数据流写入到本地文件的时候,大部分情况下会遇到:UnicodeEncodeError: 'gbk' codec can't encode character '\xa0' in position ... 这个问题。 网络上有很多类似的文件讲述如何解决这个问题,
阅读全文
摘要:在使用json.dumps时要注意一个问题 >>> import json >>> print json.dumps('中国') "\u4e2d\u56fd" 输出的会是 '中国' 中的ascii 字符码,而不是真正的中文。 这是因为json.dumps 序列化时对中文默认使用的ascii编码.想输
阅读全文
摘要:1 html = """ 2 The Dormouse's story 3 4 The Dormouse's story 5 Once upon a time there were three little sisters; and their names were 6 , 7 Lacie and 8 Tillie; 9 and they lived at the botto...
阅读全文
摘要:1 #requests+正则爬取豆瓣图书 2 3 import requests 4 import re 5 6 def get_html(url): 7 headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/4...
阅读全文
摘要:1 #requests+正则表达式爬取ip 2 #findall方法,如果表达式中包含有子组,则会把子组单独返回出来,如果有多个子组,则会组合成元祖 3 import requests 4 import re 5 def get_ip(url): 6 headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) Appl...
阅读全文
摘要:异常官方文档:http://www.python-requests.org/en/master/_modules/requests/exceptions/#RequestException
阅读全文
摘要:1 #如果需要用户名和密码才能登陆网站,则需要认证设置auth=() 2 import requests 3 response = requests.get(url,auth=('user','password')) 4 5 #或者 6 from requests.auth import HTTPBasicAuth 7 response = requests.get(url,auth=HTTP...
阅读全文
摘要:1 import requests 2 3 proxies={ 4 'http':'http://192.168.1.1:88' 5 'https':'https://192.168.1.1:88' 6 #如果代理ip需要用户名和密码的话 'http':'user:password@192.168.1.1:88' 7 } 8 response = request...
阅读全文
摘要:1 import requests 2 #response = requests.get('https://www.12306.cn') 3 #print(response.status_code) 4 #以上会显示错误,因为需要证书验证 5 6 #解决证书问题,我们有两种方法 7 8 #方法一,我们可以通过设置verify=False来忽略证书验证 9 response ...
阅读全文
摘要:1 import requests 2 requests.get('http://httpbin.org/cookies/set/number/123456') 3 response = requests.get('http://httpbin.org/cookies') 4 print(response.text) 5 #以上结果为空,原来设想通过第一步的设置cookies,然后通过...
阅读全文
摘要:1 import requests 2 files = {'file':open('D://tomas.jpg','rb')}#设定一个files,打开文件对象 3 response = requests.post('http://httpbin.org/post',files=files) 4 print(response.text)
阅读全文
摘要:post与get方法的区别在于post需要提交一些数据以备处理。 在requests里面非常简单,headers,data都是直接加进去就可以了
阅读全文
摘要:1 import requests 2 3 response= requests.get('http://www.baidu.com')#get方法请求网址 4 print(response) 5 print(response.status_code)#状态码 6 print(response.text)#响应体 7 print(response.cookies)#获取cookies另外还有r...
阅读全文
摘要:1 url分解 import urllib.parse 2 3 result = urllib.parse.urlparse('http://www.baidu.com') 4 print(result) 5 结果为:ParseResult(scheme='http', netloc='www.baidu.com', path='', params='', query='', fragment...
阅读全文
摘要:1 #捕获异常 2 import urllib.request 3 import urllib.error 4 5 try: 6 response = urllib.request.urlopen('http://sasd.com') 7 except urllib.error.URLError as e: 8 print('挂掉的情形是:',e.reason) 1 ...
阅读全文
摘要:urllib是python的一个获取url(Uniform Resource Locators,统一资源定址器)了,我们可以利用它来抓取远程的数据进行保存哦,下面整理了一些关于urllib使用中的一些关于header,代理,超时,认证,异常处理处理方法,下面一起来看看。 python3 抓取网页资源
阅读全文
摘要:1 提取cookie信息并打印 2 import http.cookiejar,urllib.request 3 4 #http.cookiejar.CookieJar的作用是提取cookie信息 5 #在这里是声明cookie变量,它是http.cookiejar.CookieJar的实例 6 cookie = http.cookiejar.CookieJar() 7 #HTT...
阅读全文
摘要:cookielib模块 cookielib模块的主要作用是提供可存储cookie的对象,以便于与urllib2模块配合使用来访问Internet资源。例如可以利用本模块 的CookieJar类的对象来捕获cookie并在后续连接请求时重新发送。coiokielib模块用到的对象主要有下面几个:Coo
阅读全文
摘要:第一步: proxy_support = urllib.request.ProxyHandler({字典参数}) 字典类型举例:{'http':'192.168.1.1:88'} 注意:这里可以创建一个iplist随机选取代理ip进行访问,方法如下: iplist =['192.168.1.1:88
阅读全文
摘要:urllib.request.urlopen(url,data,timeout) 其中如果data被赋值,则请求的方式就会由get转为post,而post需要提供一些待处理的数据。 这些待处理的数据需要一定的格式,因此就需要urllib.parse.urlencode urllib.parse.ur
阅读全文
摘要:1 import urllib.request 2 #可以将url先构造成一个Request对象,传进urlopen 3 #Request存在的意义是便于在请求的时候传入一些信息,而urlopen则不 4 request = urllib.request.Request('http: 5 response = urllib.request.url...
阅读全文
摘要:python3 urllib.request 网络请求操作 基本的网络请求示例 发送数据请求,CGI程序处理 PUT请求 基本的HTTP验证,登录请求 支持代理方式验证请求 添加 http headers 添加 user-agent 带参数的GET 请求 带参数的POST请求 指定代理方式请求 无添
阅读全文
摘要:1 #响应类型 2 import urllib.request 3 response = urllib.request.urlopen('http://www.baidu.com') 4 print(type(res...
阅读全文
摘要:1 ''' 2 urllib.request:请求模块 3 urllib.error:异常处理模块 4 urllib.parse:url解析模块 5 ''' 6 response有三个方法response.geturl()可以获取url地址response.info()获得响应的header信息response.getcode()获得响应状态码 7 #get请求 8 import...
阅读全文
摘要:1 '''pyhton的dict对象可以直接序列化为JSON的{},不过很多时候 2 我们更喜欢用class表示对象,比如定义Student类,然后序列化''' 3 import json 4 class Student(object): 5 def __init__(self,name,age,score): 6 self.name = name 7 ...
阅读全文
摘要:如果我们要在不同的编程语言之间传递对象,就必须把对象序列化为标准格式,比如xml,但更好的方法是序列化为JSON,因为JSON表示出来就是一个字符串,可以被所有语言读取,也可以方便地存储到磁盘或者通过网络传输,JSON不仅是标准格式,并且比XML更快,而且可以直接在web页面中读取,非常方便。
阅读全文
摘要:1 BaseException 2 +-- SystemExit 3 +-- KeyboardInterrupt 4 +-- GeneratorExit 5 +-- Exception 6 +-- StopIteration 7 +-- StopAsyncIteration 8 +-- ArithmeticError 9 ...
阅读全文
摘要:进入时,调用对象的__enter__ 退出时,调用对象的__exit__
阅读全文
摘要:1 import logging 2 3 def foo(s): 4 return 10 / int(s) 5 6 def bar(s): 7 return foo(s) * 2 8 9 def main(): 10 try: 11 bar(0) 12 except Exception as e: 13 ...
阅读全文
摘要:1 import sys 2 try: 3 a = 3 4 assert a > 4 5 except: 6 exc = sys.exc_info()#返回异常的元祖 7 print (exc)
阅读全文
摘要:1 try: 2 '主逻辑代码。框住了你感觉会抛出异常的代码' 3 4 except: 5 'try代码块里面如果抛出一场了,该执行这里的内容' 6 7 else: 8 'try代码块入锅没有抛出异常,就执行这里的内容' 9 10 finally: 11 '不管怎么样,这里的代码总会被执行'
阅读全文
摘要:hasattr(obj,attr) 判断前面是否有后面的属性
阅读全文
摘要:isinstance(obj1,class) 可以判断前者是否是后者的实例
阅读全文
摘要:issubclass(sub,sup) 判断前面是不是后面的子类
阅读全文
摘要:1 >>> class PClass(object): 2 def setInfo(self,sex='Male'): 3 self.gender = sex 4 5 6 >>> class CClass(PClass): 7 def setInfo(self,who): 8 self.name = who 9...
阅读全文
摘要:类有一个__dict__字典属性,保存了当前类的每一个成员,举例如下:
阅读全文
摘要:耦合性: 1、尽量通过参数接收输入,以及通过return产生输出以保证函数的独立性 2、尽量减少使用全局变量进行函数间通信 3、不要在函数中改变可变类型的参数 4、避免直接改变定义在另一个模块中的变量 聚合性: 1、每个函数目标是唯一的 2、每隔函数尽量简单
阅读全文
摘要:定义:装饰器本身就是一个函数,用于装饰其他函数。 功能:增强被装饰函数的功能。 装饰器一般接收一个函数作为参数,以实现功能增强
阅读全文
摘要:调用同事,传入*是为了分解,定义时传入*是为了整合 定义时传入的*输出时是元祖。
阅读全文
摘要:1 #请用户输入文件名并检测是否存在,存在就打开并编辑 2 import os 3 import os.path 4 filename = input('请输入您要编辑的文件:(需在D盘下):') 5 if os.path.exists('D://'+filename): 6 with open('D://'+filename,'a') as f: 7 wh...
阅读全文
摘要:可以用str.endswith('.jpg')来判断字符串是否以jpg结尾,返回True或者False
阅读全文
摘要:1 import os 2 list1=os.lisdir('E//') 3 #方法一列表推导式 4 list2=[i for i in list1 if i.endswith('.jpg')] 5 #方法二for循环 6 list3=[] 7 for i in list1: 8 if i.endswith('.jpg'): 9 list3.append(i) ...
阅读全文
摘要:1 定义一个方法get_page(url),url参数是需要获取网页内容的网址,返回网页的内容。提示(可以了解python的urllib模块) 2 import urllib.request 3 4 def get_page(url): 5 response = urllib.request.urlopen(url) 6 html = response.read() 7 ...
阅读全文
摘要:1 #定义一个方法get_num(num),num参数是列表类型,判断列表里面的元素为数字类型。其他类型则报错,并且返回一个偶数列表:(注:列表里面的元素为偶数)。 2 def get_num(num): 3 if type(num)!= list: 4 return '您传入的不是列表!' 5 else: 6 for i in num...
阅读全文
摘要:1 #定义一个方法func,该func可以引入任意多的字符串参数,结果返回(长度)最长的字符串。 2 def func2(*str): 3 4 for s in str: 5 if isinstance(s,int): 6 return '请保证全部是字符串' 7 for i in range(len(str)-1)...
阅读全文
摘要:1 #定义一个方法 func,该func可以引入任意多的整型参数,结果返回其中最大与最小的值。 2 def func1(*nums): 3 for i in nums: 4 if not isinstance(i,int): 5 return '无法比较,请保证全部是整数!' 6 #要使函数执行到这里时结束,比较...
阅读全文