Python 常用的工具包(后期继续完善)
提示: 如果引入包之后报错,检查一下缩进,python对代码缩进规范要求比较高
工具类
- 图片下载
- 文件写入
- 数据导出
"""
descripte: 工具包相关
Date: 2020年9月14日16:28:51
author: xiongchao
"""
import os
import threading
import json
import requests
from openpyxl import Workbook
class pyUtils:
"""
函数说明: 图片下载
Parameters:
urlList :[
{
url:"http://example.com/img/url/download...',
name:"图片名称
}
],
path : 下载路径
Returns:
file: 下载文件到指定路径
"""
def download(url, name, path):
try:
print('开始下载:', name)
content = requests.get(url).content
path = '%s/%s.jpg' % (path, name)
with open(path, 'wb') as f:
f.write(content)
print('下载完成', name)
except:
print("Error: system error,please try again later ")
def img_download(urlList, path):
if path:
if not os.path.exists(path):
os.mkdir(path)
print("文件夹{}创建成功".format(path))
if urlList:
for list in urlList:
print("下载地址为", list['url'])
threading.Thread(target=pyUtils.download, args=(
list['url'], list['name'], path)).start()
"""
函数说明: 文本写入
Parameters:
name: 标题
path: 保存的路径
text: 要写入的问题内容
Returns:
file: 下载文件到指定路径
"""
def write(name, path, text):
# 第二个参数 数据 a 标识追加写入
try:
if not text:
with open(path, 'a', encoding='utf-8') as f:
f.write(name + '\n')
f.writelines(text)
f.write('\n\n')
print("文件{}.txt,写入完成".format(print))
except:
print("数据写入失败")
"""
函数说明: 数据导出
Parameters:
name: 文件名+ 保存路径 ../demo/文件导出.xlsx
header: 表头
content: 数据
"""
def excel_import(name, header, content):
# 创建 文件对象
wb = Workbook()
# 新建一个表
ws = wb.active
# 设置表头
if header:
for row in range(len(header)):
c = row + 1
ws.cell(row=1, column=c, value=header[row])
else:
print("header 为空")
# 填写表中内容
if content:
for listIndex in range(len(content)):
ws.append(content[listIndex])
wb.save(filename=data_fileName)
print("写入成功")
else:
print("没有数据")
测试
# 导入自己写的工具包
from pyUtils import pyUtils
urlList = [
{'url': 'https://www.logosc.cn/uploads/icon/2019/06/14//54538bb3-706b-40f6-bc20-63a5350b4909.png', 'name': '火焰logo图片.png'},
{'url': 'https://www.logosc.cn/uploads/icon/2019/06/14//8a748e3a-faa9-4c8e-bbdb-3c535cdc60d3.png', 'name': '音乐琴行logo.png'},
{'url': 'https://www.logosc.cn/uploads/icon/2019/06/14//7f3daa30-da19-46c4-9591-cd3b73205b7d.png', 'name': '狼咆哮logo图标'},
{'url': 'https://www.logosc.cn/uploads/icon/2019/06/14//a2fecd51-1b09-47d6-b797-3e71cbdd4a4a.png', 'name': '音乐符号logo图标.png'}
]
pyUtils.img_download(urlList,"下载")
本文使用 mdnice 排版