title: Python 技巧整理
copyright: true
top: 0
date: 2018-12-31 18:29:40
tags: Python技巧
categories: Python基础笔记
permalink:
password:
keywords: Python技巧
description: Python在开发的时候常用的小技巧
嗯,万般皆是命。
欢迎关注公众号:【安全研发】获取更多相关工具,课程,资料分享哦~
最后更新时间:
22:3059
星期三
2019年2月20日
编码加密类
hex编码
使用hex(‘a’)是不行的,如果想要对字符串hex编码可以这么写
print 'a'.encode('hex')
base64编码解码
需要导入base64的库,具体如下
import base64
print base64.b64encode('a')
# 如果要解码改成decode即可
URL编码
导入库实现,如下
from urllib import quote
print quote('select user from users#')
ASCII编码
print map(ord,'<?php phpinfo() php>')
URL格式化输出
有的时候需要提交的包是字典形式,如果自己转换成URL形式很麻烦。使用urllib库解决,方法如下
from urllib.parse import urlencode
data={
user:'admin',
pass:'123456',
age:'50'
}
url = 'http://www.langzi.fun/get?' + urldecode(data)
Python引用(import)文件夹下的py文件的方法
import sys
sys.path.append("..")
import mod1
import mod2.mod2
列表按照数量分割
keywords = ['有限公司', '人力资源', '学院', '保障局', '人民政府', '职业', '管理局', '委员会', '集团', '股份', '科技', '社会', '北京', '技术', '平台', '中国',
'财产保险', '信息网', '卫生', '社会保障', '有限公司', '学院', '人民政府', '科技', '职业', '集团', '委员会', '中国', '北京', '信息网', '股份', '技术',
'上海', '教育', '平台', '管理局', '人才网', '服务网', '大学', '网站', '有限公司', '学院', '人民政府', '职业', '科技', '集团', '委员会', '管理局',
'技术', '信息网', '中国', '北京', '平台', '教育', '大学', '股份', '上海', '人力资源', '网络科技', '人才网']
keywords = ['|'.join(tuple(keywords[i:i + 50])) for i in range(0, len(keywords), 50)]
for k in keywords:
print(k)
返回结果:
有限公司|人力资源|学院|保障局|人民政府|职业|管理局|委员会|集团|股份|科技|社会|北京|技术|平台|中国|财产保险|信息网|卫生|社会保障|有限公司|学院|人民政府|科技|职业|集团|委员会|中国|北京|信息网|股份|技术|上海|教育|平台|管理局|人才网|服务网|大学|网站|有限公司|学院|人民政府|职业|科技|集团|委员会|管理局|技术|信息网
中国|北京|平台|教育|大学|股份|上海|人力资源|网络科技|人才网
安装pip
安装python.msi时候没有勾选安装pip的情况下,就不会帮你安装pip的,在cmd下输入命令安装
python -m pip install -U pip setuptools
如果报错的话,到Python pip网站下载get-pip.py 文件,python get-pip.py安装即可。
如果你安装的时候勾选了pip,但是目录下并没有pip,可以通过命令调出pip
python -m ensurepip
然后会发现目录下生成了pip文件
在linux系统的python3环境中,你发现怎么样折腾安装不上pip3,各种报错显示:
No module named pip
这个时候使用apt-get安装即可
apt-get install python3-pip
pip3 -v
但是如果你是py2的话,安装库可能会出现编码错误,比如像这样的:
UnicodeDecodeError: 'gbk' codec can't decode pyinstaller
UnicodeDecodeError: 'ascii' codec can't decode pyinstaller
等等。。。
这个时候在python的安装路径下的Lib\mimetypes.py文件。在import下添加如下几行,将编码设置为‘gbk’:
if sys.getdefaultencoding() != 'gbk':
reload(sys)
sys.setdefaultencoding('gbk')
并且在你的python代码中的开头加上这三行代码(仅限于PYTHON2)
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
网络请求
requests
保存cookies,第一步登录你的账户密码获取cookie,然后使用cookie登录
payload = {'username': 'admin', 'password': 'password'}
r = requests.post('http://pythonscraping.com/pages/cookies/welcome.php', data=payload)
print(r.cookies.get_dict())
r = requests.get('http://pythonscraping.com