欢迎您光临运丰机械网,如有问题请及时联系我们。

python可以实现哪些办公自动化?

作者:运丰机械网
文章来源:本站

  

python可以实现哪些办公自动化?

  

python可以实现哪些办公自动化?

  

python可以实现哪些办公自动化?

  Python办公自动化主要是批量化、自动化、定制化解决数据问题,目前主要分为三大块:自动化office、自动化机器人、自动化数据服务。

  1、自动化office,包括对excel、word、ppt、email、pdf等常用办公场景的操作,

  python都有对应的工具库,可以很方便的调用。

  提供一些常见的核心库供大家参考使用。

  excel:xlwings、xlrd、xlwt、openpyxl

  word:Python-docx

  ppt:pptx

  email:smtplib(SMTP服务)、email(解析处理)、yagmail(全能)

  pdf:pypdf2、pdfminer、pdfplumber

  picture:PIL

  学这些会撸python是前提,对于小白来说自学也不是件容易的事,需要花相当的时间去适应python的语法逻辑,而且要坚持亲手敲代码,不断练习。

  2、自动化机器人,用来提高常规且高频的服务,比如微信客服、自动交易系统、实时信息抓取、QQ聊天机器人等。

  例如

  web自动化测试:selenium

  模拟鼠标键盘:pymouse、pywinauto、pyautogui

  微信自动化:wechatby

  Python自动化办公其实并不难,但也需要有Python基础,起码得会写脚本,不然尽管有自动化接口也用不了。

  很多人入了很长时间门,还是在门外徘徊,我觉得这是学习方法的问题。学习编程一定要多练习,基础+实战同步走,这样才能最快掌握Python。

  可能你会问,看书看不进去怎么办,那就换条路子,你可以去看视频、看网络教程、逛github,都是很不错的方法.

  3、自动化数据服务,主要是提供流式数据服务,从数据获取、数据处理、数据建模、数据可视化,到最终生成数据报告,通过python搭建起完整数据链条。

  数据抓取:requests、scrapy

  数据处理:pandas、numpy

  数据建模:scipy、scikit-learn、statesmodel、keras

  数据可视化:matplotlib、seaborn、bokeh、pyecharts

  数据报表:dash

  以python操作excel为例,使用xlwings生成自动化图表。

  1、简单介绍xlwings

  接下来实操演练:

  1、准备一个表格

  2、对表格进行各种操作

  导入xlwings库,命名为xw

  import xlwings as xw

  建立与活动工作簿的连接

  # 这里使用books方法,引用工作簿

  wb = xw.books["商品清单.xlsx"]

  type(wb)

  xlwings.main.Book

  查看工作簿的名字

  wb.name

  '商品清单.xlsx'

  实例化工作表对象

  sht = wb.sheets['表一']

  查看表一中A1单元格的内容

  # 标准用法

  sht.range('A1').value

  '品类'

  # 简洁用法

  sht['A1'].value

  '品类'

  # 索引用法

  sht[0,0].value

  '品类'

  查看表一中A1-D8所有单元格的内容

  sht.range('A1:D8').value

  输出:

  [['品类', '数量(件)', '单价(元)', '总价(元)'],

  ['坚果', 5.0, 30.0, 150.0],

  ['罐头', 9.0, 10.0, 90.0],

  ['牛肉', 3.0, 60.0, 180.0],

  ['果汁', 10.0, 9.0, 90.0],

  ['蜂蜜', 2.0, 80.0, 160.0],

  ['进口零食', 4.0, 70.0, 280.0],

  ['合计', 33.0, 43.166666666666664, 950.0]]

  sht[:8,:4].value

  输出:

  [['品类', '数量(件)', '单价(元)', '总价(元)'],

  ['坚果', 5.0, 30.0, 150.0],

  ['罐头', 9.0, 10.0, 90.0],

  ['牛肉', 3.0, 60.0, 180.0],

  ['果汁', 10.0, 9.0, 90.0],

  ['蜂蜜', 2.0, 80.0, 160.0],

  ['进口零食', 4.0, 70.0, 280.0],

  ['合计', 33.0, 43.166666666666664, 950.0]]

  将表一B2单元格5改为7

  sht.range('B2').value = 7

  向表二中导入dataframe类型数据

  第一步:连接表二

  第二步:生成一个dataframe类型数据集

  第三步:导入表二

  sht_2 = wb.sheets['表二']

  import pandas as pd

  df = pd.DataFrame({'姓名':['小王','小张','小李'],'年龄':[23,26,19]})

  df

  导入:

  sht_2.range('B1').value = df

  向表二中导入numpy数组

  import numpy as np

  obj = np.array([[1,2,3],[4,5,6]])

  obj

  输出:

  array([[1, 2, 3],

  [4, 5, 6]])

  导入:

  sht_2.range('F1').value = obj

  将excel中数据导出为DataFrame格式

  sht_2.range('B1').options(pd.DataFrame, expand='table').value

  用matplotlib绘图并将图片贴到excel上

  import matplotlib.pyplot as plt

  fig = plt.figure(figsize=(4,4))

  plt.plot([1,2,3,4,5])

  sht_2.pictures.add(fig, name='MyPlot', update=True)

  输出:

  <Picture 'MyPlot' in <Sheet [商品清单.xlsx]表二>>

  修改表三中A1单元格的宽和高

  连接表三

  sht_3 = wb.sheets['表三']

  查看A1单元格的宽和高

  # 查看列宽

  sht_3.range('A1').column_width

  8.11

  # 查看行高

  sht_3.range('A1').row_height

  13.8

  A1单元格高改为15.6,宽改为2.2

  sht_3.range('A1').column_width = 2.2

  sht_3.range('A1').row_height = 15.6

  修改表三B1单元格颜色

  # 查看B1单元格颜色

  sht_3.range('B1').color

  (255, 0, 0)

  # 修改B1单元格颜色为黑色

  sht_3.range('B1').color = (0,0,0)

  写一个自动化的小脚本

  def f():

  sht_3.range("A1:AZ48").column_width = 1.1

  sht_3.range('A1:AZ48').row_height = 7.8

  list_1 = pd.read_csv('zaike.csv').values

  for i,j in list_1:

  sht_3[int(i),int(j)].color = (255,25,0)

  f()

  list_1 = []

  for i in range(30):

  for j in range(40):

  c = sht_3[i,j].color

  if c == (255,0,0):

  list_1.append((i,j))

  这些小例子都能跑,你可以放自己电脑上运行下,或者手敲每个代码,这样绝对能高效率掌握。

  如果对python语法还不熟悉,最好先把框架熟悉一遍,多做些练习。

来源:文章来源于网络,如有侵权请联系我们删除。本文由运丰机械网编辑,欢迎分享本文,转载请保留出处和链接!