06 2019 档案
摘要:01 Chrome调试 抓包工具原理 Chrome 开发者工具是一套内置在Google Chrome中Web开发和调试工具。使用开发者工具来重演,调试和剖析您的网站。 其中常用的有Elements(元素面板)、Console(控制台面板)、Sources(源代码面板)、Network(网络面板)。
阅读全文
摘要:01 抓包工具原理 HTTP 由于HTTP请求是没有加密的,也没有做任何验证,所以抓包工具直接将请求转发即可。 HTTPS 由于HTTPS请求,客户端会使用服务端的证书来加密数据,而且会验证服务端是否是真正的目标服务端。 所以抓包工具在抓包HTTPS请求时,会进行伪装。 首先用抓包工具自己的证书向客
阅读全文
摘要:Cookie的Python爬虫应用 Cookie是什么 Cookie,有时也用其复数形式 Cookies,英文是饼干的意思。指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于 RFC2109 和 2965 中的都已废弃,最新取代的规范是 RFC
阅读全文
摘要:Python图像处理-Pillow 简介 Python传统的图像处理库PIL(Python Imaging Library ),可以说基本上是Python处理图像的标准库,功能强大,使用简单。 但是由于PIL不支持Python3,而且更新缓慢。所以有志愿者在PIL的基础上创建了一个分支版本,命名为P
阅读全文
摘要:Selenium笔记(8)常见的坑 本文集链接:https://www.jianshu.com/nb/25338984 用Xpath查找数据时无法直接获取节点属性 通常在我们使用xpath时,可以使用@class的方式直接获取节点的属性,如下所示: 但在Selenium中不支持这种用法,只能在找到节
阅读全文
摘要:Selenium笔记(7)异常 本文集链接:https://www.jianshu.com/nb/25338984 完整文档 Exceptions that may happen in all the webdriver code. exception selenium.common.excepti
阅读全文
摘要:Selenium笔记(6)等待 本文集链接:https://www.jianshu.com/nb/25338984 简介 在selenium操作浏览器的过程中,每一次请求url,selenium都会等待页面加载完毕以后,才会将操作权限再次交给我们的程序。 但是,由于ajax和各种JS代码的异步加载问
阅读全文
摘要:Selenium笔记(5)动作链 本文集链接:https://www.jianshu.com/nb/25338984 简介 一般来说我们与页面的交互可以使用Webelement的方法来进行点击等操作。但是,有时候我们需要一些更复杂的动作,类似于拖动,双击,长按等等。 这时候就需要用到我们的Actio
阅读全文
摘要:Selenium笔记(4)Webelement 本文集链接:https://www.jianshu.com/nb/25338984 这是通过find方法找到的页面元素,此对象提供了多种方法,让我们可以与页面元素进行交互,例如点击、清空。 方法 clear()清空 如果当前元素中有文本,则清空文本 c
阅读全文
摘要:Selenium笔记(3)Remote Webdriver 本文集链接:https://www.jianshu.com/nb/25338984 简介 selenium.webdriver.remote.webdriver.WebDriver 这个类其实是所有其他Webdriver的父类,例如Chro
阅读全文
摘要:Selenium笔记(2)Chrome Webdriver启动选项 本文集链接:https://www.jianshu.com/nb/25338984 在Selenium中使用不同的Webdriver可能会有不一样的方法,有些相同的操作会得到不一样的结果,本文主要介绍的是Chrome()的使用方法。
阅读全文
摘要:Selenium笔记(1)安装和简单使用 本文集链接:https://www.jianshu.com/nb/25338984 简介 Selenium是一个用于Web应用程序测试的工具。 Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10,
阅读全文
摘要:Python与常见加密方式 前言 数据加密与解密通常是为了保证数据在传输过程中的安全性,自古以来就一直存在,古代主要应用在战争领域,战争中会有很多情报信息要传递,这些重要的信息都会经过加密,在发送到对应的人手上。 现代 ,在网络发展初期,网络的数据安全性是没有被足够的重视的。事实上,当时为了实现数据
阅读全文
摘要:HTML解析库BeautifulSoup4 本文链接:https://www.jianshu.com/p/e9255c446a77 BeautifulSoup 是一个可以从HTML或XML文件中提取数据的Python库,它的使用方式相对于正则来说更加的简单方便,常常能够节省我们大量的时间。 Beau
阅读全文
摘要:更简单高效的HTML数据提取-Xpath 本文地址:https://www.jianshu.com/p/90e4b83575e2 XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。 相比于BeautifulSoup,Xpath在提取数据时会
阅读全文
摘要:优雅到骨子里的Requests 本文地址:https://www.jianshu.com/p/678489e022c8 简介 上一篇文章介绍了Python的网络请求库urllib和urllib3的使用方法,那么,作为同样是网络请求库的Requests,相对于urllib,有什么优点呢? 其实,只有两
阅读全文
摘要:Python网络请求urllib和urllib3详解 urllib是Python中请求url连接的官方标准库,在Python2中主要为urllib和urllib2,在Python3中整合成了urllib。 官方文档链接为:https://docs.python.org/3/library/urlli
阅读全文
摘要:深入浅出了解HTTP协议 HTTP(HyperText Transfer Protocol,超文本传输协议)是互联网上应用最为广泛的一种网络协议。目前使用最普遍的一个版本是HTTP 1.1。 HTTP协议是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它
阅读全文
摘要:1.正则表达式 正则可以代替其他任何工具,但是其他工具不能完全代替正则. 1.匹配或提取字符串的工具,基于所有语言之上的工具. 正则表达式所面向的问题 判断一个字符串是否匹配给定的格式,如判断用户注册账号是否满足格式. 从一个字符串中按指定格式提取信息.抓取页面中的链接. 判断用户提交的邮箱的格式是
阅读全文
摘要:异常处理作业讲解 file = open('/home/pyvip/aaa.txt','w+') try: my_dict = {'name':'adb'} file.write(my_dict['age']) #只能传字符串 except Exception as e: print(e) fina
阅读全文
摘要:几个命令: sudo apt install tree tree 当前目录以树形结构展示出来. tree a 查看a内的所有目录.也可以跟绝对路径. a = input('请输入您的密码') 将用户输入保存. 1.异常 异常就是报错. 异常:NameError SyntaxError TypeErr
阅读全文
摘要:文件 装饰器,装饰函数或者类的方法. 1.文件的基本操作 打开文件: 注意绝对路径与相对路径. path = 'text.txt' path = r'/home/pyvip/py_case/text.txt' file = open(path,'w+') r代表只读 读取与关闭,参数加引号.w全部覆
阅读全文
摘要:课前的解答 1.vim怎么退出都知道吧,配置了pep8,所以说会出现退出的时候error,再退出一次就ok q:退出 w:保存 wq 保存退出 q!:强制退出 shift + zz:保存退出 x:保存退出 2.推荐大家两款软件:向日葵(远程控制软件),网易有道词典,Python官方文档 3.函数名首
阅读全文
摘要:1.继承 class Father: def init(self,age,sex): self.age = age self.sex = sex class Son(Father): 类名后面写括号,括号中放父类名. pass class Dog(默认继承object类):所有类的父类 pass 不
阅读全文
摘要:1.类的定义 class 类 是独立存放变量(属性/方法)的一个空间. 每个实例都是一个独立的变量空间.不同实例之间的空间互相不可见. 一个实例的特征,就是属性. 定义在类中的私有属性也可以被子类继承. 变量在类中称为属性,但是类中的属性不仅仅只包含变量,函数等其他的对象也可以作为类的属性. 类可以
阅读全文
摘要:1.匿名函数 list(filter(lamda a:a>3,[1,2,3,4,5])) 一般和过滤器一起使用 2.函数的作用域 a = 123 def test(): a = 666 a = a + 1 print(a) test() print(a) 1.函数外面访问不到函数里面的变量 2.函数
阅读全文
摘要:函数基础和函数参数 可迭代对象:序列类型 range . 1.函数的定义 def 函数名(参数): pass return 表达式 ,不能是赋值语句.不写默认返回None.用逗号隔开返回一个元组. 函数名() # 调用 a() == 返回值,调用a函数就等于其返回值 函数命名的规则:字母(首字母小写
阅读全文
摘要:控制流程 1.条件判断 python中的代码从上到下执行. if 条件: 缩进 语句1 elif 条件2: 缩进 语句2 (…或者写pass关键字.不写任何代码的时候,防止报错.) ... else: pass 语句last 2.三目运算 a = 7 print(True if a > 5 else
阅读全文
摘要:散列类型 1.集合 定义集合 se = {1,2,3,4} se = set()定义空集合 se = {1,3,5,7} se2 = {1,3,8,9} se & se2 {1,3} 交集 se | se2 并集 se - se2 差集 add 增 pop 随机删 remove 指定删除 updat
阅读全文
摘要:VIM中HJKL可以上下左右移动光标. 格式化输出和深浅复制 1.字符串的拼接和格式化 sudo pip3 install ipython 安装 ipython 进入 字符串相加 str1 + str2 列表相加 list1 + list2 '%s'%12 指定位置拼接 'J%s%s'%(12,'晚
阅读全文
摘要:列表的方法: 增:append() insert() extend()只能添加序列类型. .改li[0]= '123' li.insert(2,'123') 2个参数,位置,值 li.remove('123'),如果有两个123,只会删除前面第一个. 其他方法copy() reverse() sor
阅读全文
摘要:%,取余 //,取整,向下取整,5//2 = 2。 一、变量类型 1.变量名不能以数字开头,不能纯数字,不要用汉字,可以用下划线开头 2.数值类型(int,float,bool,complex) 2.1 bool类型大小写区分,True,False。True + 1不会报错 2.2复数类型,
阅读全文
摘要:01 同步和异步 生活中常常会遇到在超市排队买东西的情况,排在你前面的人没有结算完成,你就无法付账,在计算机中也有类似的情形,一个程序在执行之前,需要等待其他的程序执行完成,大家还能举出其他的例子吗? 同步 含义:指两个或两个以上随时间变化的量在变化过程中保持一定的相对关系 现象:有一个共同的时钟,
阅读全文
摘要:websocket 01 长轮询 在网页,我们经常扫码登录,结合之前的学习的知识点,来思考下,前端是如何知道用户在手机上扫码登录了呢? 长轮询:客户端不断的向服务器发送请求 缺点: \1. 开销大 \2. 浪费资源 \3. 消耗流量 02 websocket介绍 长轮询消耗太多资源,其中主要原因是客
阅读全文
摘要:01 cookie 在上节,我们简单了解了登录过程,但是很明显,每次都需要登录,但是在平常逛网站的只需要登录一次,那么网站是如何记录登录信息的呢? 有没有什么办法可以让浏览器记住登录信息,下次再次打开的时候,可以自动登录呢? 设置 cookie self.set_cookie('cookie_tes
阅读全文
摘要:01 一对一表关系 Module 需要先创建对应的 Module ,这里采用之前建立好的 User 和 UserDetails relationship from sqlalchemy.orm import relationship 在 UserDetails 中添加如下代码: userdetail
阅读全文
摘要:01 查询结果 上节使用query从数据库中查询到了结果,但是query返回的对象是直接可用的吗? 首先导入模块 from connect import session from user_modules import User query**返回对象** rs = session.query(Us
阅读全文
摘要:01 ORM 在服务器后台,数据是要存储在数据库的,但是如果项目在开发和部署的时候,是使用的不同的数据库,该怎么办呢?是不是需要把所有的 SQL 语句都再重新写一遍呢? 和数据库相关,不同的数据库需要写不同的 SQL 语句 使用 ORM 隔离框架和数据库 ORM全称 Object Relationa
阅读全文
摘要:01 模板继承 父模板 <html lang="en"> <head> <head> <head> <meta charset="UTF-8"> <meta charset="UTF-8"> <meta charset="UTF-8"> <link rel="shortcut icon" h
阅读全文
摘要:01 模板 模板演示 配置路径 在 application 中配置模板文件和静态文件的路径: template_path='templates', static_path='static', 模板 <body> 欢迎{{ username }}登录 </body> Handler class Tem
阅读全文
摘要:01 请求与响应 请求 浏览器在发送请求的时候,会发送具体的请求信息,由请求行,请求消息头,请求正文 请求消息头 向服务器传递附加信息 Accept: 浏览器可以接受的MIME类型。 Accept-Charset: 浏览器支持的字符集,如gbk,utf-8 Accept-Encoding: 浏览器能
阅读全文
摘要:01 输出 write bytes类型 class IndexHandler(tornado.web.RequestHandler): def get(self): self.write(b'Tornado ') 字典类型 user = { 'name': 'budong', 'age': 18 }
阅读全文
摘要:tornado 小而精 Django 大而全 Web框架 Tornado是一个由Python开发的Web框架 Web服务 利用Tornado,可以快速搭建和一个高性能的Web服务 非阻塞 Tornado是单线程异步的非阻塞服务器,因此速度非常快,相对一般情况下来说,如果同时连接数Django为300
阅读全文
摘要:MTV view视图 wsgi函数 def index(request): .... return HttpResponse() 特定的HTTP方法.get,post可以定义单独的方法 继承,多继承,代码分解成可以复用的组件 在urls.py中定义调用类视图 类视图的写法 通用类视图 在studen
阅读全文
摘要:我们昨天登录admin时创建的用户信息是存放在哪里了呢? auth系统的数据表: 从表的名称我们就能看出, auth_user,auth_group,auth_permission分别存放了用户,用户组,权限的信息表.另外三张表就是多对多的关系表 User:User是auth模块中维护用户信息的关系
阅读全文
摘要:Django中间件(Middleware) 是一个轻量级、底层的“插件”系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出. django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时
阅读全文
摘要:浏览器存储cookie的方式不太安全,那有没有更好些的来存储登入状态的方式呢??? 状态保持 cookie和session: 状态保持: 1.http协议是无状态的:每次请求都是一次新的请求,不会记得之前通信的状态 2.客户端与服务器端的一次通信,就是一次会话实现状态保持的方式:在客户端或服务器端存
阅读全文
摘要:from django.shortcuts import render, redirect, reversefrom datetime import datetime# Create your views here.from django.http import HttpResponse, Json
阅读全文
摘要:视图函数接受到的request到底是个什么对象呢? HttpRequest对象: 服务器接收到http协议的请求后,会根据报文创建HttpRequest对象视图函数的第一个参数是HttpRequest对象在django.http模块中定义了HttpRequest对象的API form标签中的GET和
阅读全文
摘要:1.自定义主键字段的创建 AutoFiled(pirmary_key=True) # 一般不会自定义,int类型,自增长 一般不自定义主键. 2.order_by asc desc from django.db.models.function import Lower res = Student.o
阅读全文
摘要:1.常用的模型字段类型 https://docs.djangoproject.com/en/2.1/ref/models/fields/#field-types 2.字段的常用参数 官方文档:https://docs.djangoproject.com/en/2.1/ref/models/field
阅读全文
摘要:1.数据库的连接配置 django 连接mysql的配置流程: 安装 pymysql pip install pymysql 创建数据库用户 有创建数据库权限的用户 创建数据库 crm 修改配置 settins 修改项目文件夹(和settings.py文件所在的目录)下 init.py 文件 写上:
阅读全文
摘要:根据一定规则,自己定义出符合需求功能的.用在任何你有需求的地方,因为内置的满足不了我们的需求,不同的东西有不同的定义规则 目前最最重要的就是HOW 一 文件路径配置: templates 存放自定义 某个app特有的自定义标签:存放模板的目录:在app目录下创建一个python package,在其
阅读全文
摘要:1.常用的模板标签 -作用是什么? -常用标签 总结:语法 {% tag %} {% endtag %} {% tag 参数 参数 %} 2.模板的继承与引用 -引用 include标签 -继承 extends标签 block 标签在渲染的过程中提供任意的逻辑 标签语法: 由{%和 %} 来定义的,
阅读全文
摘要:模板变量及模板过滤器. 1.模板路径的查找 -查找顺序 1.尝试,在app目录下存放模板. -两种方案 1.app项目文件夹下存放. 2.templates文件夹下分类存放. 首先查找项目settings里的DIRS,可以定义多个路径,这是个列表. APP_DIRS:True定义在注册app中去找.
阅读全文
摘要:1.URL(Uniform Resoure Locator)统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。 网址 全球统一资源定位符http://ww.
阅读全文

浙公网安备 33010602011771号