测试代码:
models.Tb1.objects.filter(id__lt=10, id__gt=1) # 获取id大于1 且 小于10的值
models.Tb1.objects.filter(id__in=[11, 22, 33]) # 获取id等于11、22、33的数据
models.Tb1.objects.exclude(id__in=[11, 22, 33]) # not in
models.Tb1.objects.filter(name__contains="ven") # 获取name字段包含"ven"的
models.Tb1.objects.f...
常用的查询操作
<1> all(): 查询所有结果
<2> get(**kwargs): 返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误。
<3> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象
<4> exclude(**kwargs): 它包含了与所给筛选条件不匹配的对象
<5> values(*field): 返回一个ValueQuerySet——一个特殊的QuerySet,运行后得到的并不是一系列model的实例化对...
anyChat
IM
0x01 函数代码
'''
/**
* 加密解密子字符串函数
* @param $string
* @param $operation
* @param string $key
* @return bool|mixed|string
*
* $key = md5(md5("gyarmy"));
$token = encrypt($str, 'E', $key);
echo '加密:'.encrypt($str, 'E', $key);
echo '<br />';
echo '解密:'.enc...
上线后出问题的原因 注意 0 和 '0'
<?php
#测试下注释方法
function a($a){
var_dump(empty($a));
var_dump($a==null);
}
//php填坑
a('0');
原因说明
原文
测试案例
<?php
#测试下注释方法
function a($a){
var_dump(empty($a));
var_dump($a==null);
...
0x01 错误原因
python manage.py makemigrations
报错提示: AttributeError: 'str' object has no attribute 'decode'
0x02 解决
直接定位到报错文件
C:\python38\Lib\site-packages\django\db\backends\mysql\operations.py
修改源码:
# 头部导入
from django.utils.encoding import force_text
# 报错的位置更改
q...
0x01 报错
表单提交的时候报错提示
CSRF token missing or incorrect.*
0x02 处理
模板中添加如下防止csrf代码
{% csrf_token %}
Django的安装
注意安装LTS版本
安装
pip install Django==2.2(卸载django:pip uninstall django)
创建第一个Django项目
命令行创建
django-admin startproject 项目名
PyCharm
File -> new Project -> 左侧选第二项,右侧第一项是路径,第二项是选python版本
在...
0x01接收路径
函数式的路径判断
截取请求路径的扩展功能
0x02 代码
"""
使用socket 搭建一个简单的web服务端
函数进阶版
"""
import time
import socket
sk = socket.socket()
sk.bind(('127.0.0.1', 8080))
sk.listen()
def yingying(url):
data = 'ni fang wen de shi: {}'.format(url)
return bytes(data, encoding='utf8')
...
0x01 需求
功能说明:
监听9090端口
解析html文件
支持http协议
0x02 代码实现
import socket
sk = socket.socket()
sk.bind(("127.0.0.1",9090))
sk.listen()
#sk.accept()
while True:
conn,addr = sk.accept()
data = conn.recv(1024)
print(data)
#http协议输出
...
0x01 server
import select
import socket
sk = socket.socket()
sk.bind(('127.0.0.1',8080))
sk.listen()
del_l = []
rlist = [sk]# 是用来让select帮忙监听的 所有 接口
# select:windows/linux是监听事件有没有数据到来
# poll: linux 也可以做select的工作
# epoll: linux 也可以做类似的工作
while 1:
r,w,x = select.select(rlist,[]...
0x01 服务端
import socket
sk = socket.socket()
sk.setblocking(False)
sk.bind(('127.0.0.1',8080))
sk.listen()
l = []
del_l = []
while 1:
try:
conn,addr = sk.accept()# 如果是阻塞IO模型,在这里程序会一直等待。
l.append(conn)# 将每个请求连接的客户端的conn添加到列表中
except BlockingIOError:
for...
0x01代码
from bs4 import BeautifulSoup
import requests
import time
import re
from multiprocessing import Process
headers = {
'user-agent':'Mozilla/5.0 (Windows NT 6.1; W…) Gecko/20100101 Firefox/61.0'
}
def get_url(url):
res = requests.get(url)
if res.status_code == 200:
...
0x01 PyCharm安装包的方法
引入图片
0x02 命令行安装
无法在pycharm中指定源 关键命令
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple bs4
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests
测试有效