python入门经典视频系列教程(免费,2K超清,送书)

https://study.163.com/course/courseMain.htm?courseId=1006183019&share=2&shareId=400000000398149

程序增加了智能判断时间功能,根据pdf文档页数来调整等待时间,页数越长,时间越长,反之亦然。

如果读取页数出错,说明pdf文档质量不好,则返回10秒等待时间

这样降低了错误率。

# -*- coding: utf-8 -*-
"""
作者QQ:231469242
Created on Thu May 12 11:22:57 2016
excel 会自动保存,不用再自己保存
提示:运行一次anaconda后要重新启动,anaconda和pyautogui有点不兼容
其它软件突然弹出会扰乱程序,例如杀毒软件,搜狗,对话框等弹出
pdf字符串超过8192个,也会出错,复制错位pdf
pdf内容第一个字符是等号或减号时,会提示出错信息 #最新操作法:
0.批量导入pdf文件名到excel内
1.读取所有pdf文件名,保存到list_pdf_fileNames
2.准备工作:打开pdf和excel
3.循环把所有pad内容复制粘贴到excel内
3.1输入PDF文件名,并进入,全选内容,复制pdf内容
3.2返回桌面,打开excel
3.3pdf内容复制到cell内
3.4 保存excel,关闭excel
4.保存excel,关闭excel;关闭pdf excel快捷键:
窗口最大化:ctrl+F10
进入相应cell:F2:
切换:Alt+tab
保存:ctrl+s
关闭: alt+f4 pdf快捷键:
打开pdf文档:ctrl+o
全选:ctrl+a
复制:ctrl+c
粘贴:ctrl+v
关闭pdf文档:ctrl+w
关闭Adobe:ctrl+q @author: Administrator
""" import pyautogui,time,os,PyPDF2,xlrd #任务栏锁定excel坐标(101,876) pdf坐标(174,875) office_dir_pdf_files="C:/Users/Administrator/Desktop/pdf批量提取到excel/guide_pdf/"
home_dir_pdf_files="C:/Users/daxiong/Desktop/李佳pdf中文提取/guide_pdf/"
dir="C:/Users/Administrator/Desktop/pdf批量提取到excel/guide_pdf/" data=xlrd.open_workbook("C:/Users/Administrator/Desktop/test1.xlsx")
table=data.sheet_by_index(0)
list_pdf_fileNames=table.col_values(0) def Get_time(i):
filename=dir+list_pdf_fileNames[i]
try:
pdfFileObj=open(filename,'rb')
pdfReader=PyPDF2.PdfFileReader(pdfFileObj)
pages=pdfReader.numPages #显示页数 在第4100行时读取pdfReader也会出错 except: #print ("wrong when read pdf:",filename)
sleepTime=10
return sleepTime if pages<=5:
sleepTime=2
elif 5<pages<=10:
sleepTime=3
elif 10<=pages<20:
sleepTime=5
elif 20<=pages<30:
sleepTime=7
else:
sleepTime=int(pages/6) return sleepTime #返回桌面,打开pdf
def Return_desktop_open_pdf():
#pyautogui.hotkey("winleft","d")
#time.sleep(1)
#打开存储PDF软件;(50,50)为pdf坐标
pyautogui.click(174,875)
time.sleep(1) #返回桌面,打开excel
def Return_desktop_open_excel():
#pyautogui.hotkey("winleft","d")
#time.sleep(1)
#打开存储excel软件;(55,189)为excel坐标
pyautogui.click(101,876)
time.sleep(1) #双击安全参数5,特别是后期数据量变大 #保存,关闭excel
def Save_and_close_excel():
pyautogui.hotkey("ctrl","s")
time.sleep(10) #安全参数5-10
#pyautogui.hotkey("alt","f4")
#time.sleep(1) #安全参数2 #excel复制一个单元格内容
def Excel_copy_oneCellContent(i):
pyautogui.press("f2")
time.sleep(1)
#粘贴信息
pyautogui.hotkey("ctrl","v") sleeptime=Get_time(i)
time.sleep(sleeptime) #安全参数10
pyautogui.press("enter")
time.sleep(1) #pyautogui.hotkey("winleft","d")
#time.sleep(1) def Copy_one_pdfToExcel(i):
fileName=list_pdf_fileNames[i]
#循环把所有pad内容复制粘贴到excel内
#打开存储PDF软件;(55,189)为pdf坐标
pyautogui.click(174,875)
time.sleep(1)
pyautogui.hotkey("ctrl","o")
time.sleep(1)
#2.1输入PDF文件名,并进入
pyautogui.typewrite(fileName)
time.sleep(1)
pyautogui.press("enter")
time.sleep(1) #选中pdf全部内容
pyautogui.hotkey("ctrl","a")
time.sleep(1)
sleeptime=Get_time(i) #安全参数10
#复制所有内容,等待时间设置长一点
pyautogui.hotkey("ctrl","c")
time.sleep(sleeptime)
#关闭pdf文档
pyautogui.hotkey("ctrl","w")
time.sleep(1) #安全参数2
#print("ok for test")
#2.2返回桌面,打开excel
Return_desktop_open_excel()
#print("ok for test1")
#excel复制一个单元格内容
Excel_copy_oneCellContent(i)
#print("ok for test2") #准备工作:excel的cell默认锁定位置是(B,2),最大化
pyautogui.doubleClick(50,50)
time.sleep(5) #安全参数5,特别是后期数据量变大
pyautogui.hotkey("winleft","d")
time.sleep(1) #循环把所有pad内容复制粘贴到excel内
for i in range(len(list_pdf_fileNames)):
Copy_one_pdfToExcel(i) #3.关闭Adobe acrobat9.0
pyautogui.hotkey("ctrl","q")

  

 https://study.163.com/provider/400000000398149/index.htm?share=2&shareId=400000000398149( 欢迎关注博主主页,学习python视频资源,还有大量免费python经典文章)

最新文章

  1. Spark 学习总结
  2. [Python] 学习笔记之MySQL数据库操作
  3. SQLite中文排序
  4. Linux 性能优化之 IO 子系统
  5. C#中控件数组的讨论
  6. AppScan学习笔记
  7. jQuery 源码分析6: jQuery 基本静态方法(二)
  8. zepto源码学习-02 工具方法-详细解读
  9. Google机器学习笔记 4-5-6 分类器
  10. VC 中与字符串相关的宏 _T、TEXT,_TEXT、L 的作用(简单明了)
  11. el5,6,7的ntpdate服务
  12. Centos 06 文件类型和扩展名&amp;索引节点inode和存储块block
  13. C# Common Code
  14. composer lavarel 安装
  15. java中的内存模型
  16. Mysql 管理和备份
  17. Websphere设置JVM时区解决程序、日志时间快8小时问题
  18. Python基础教程学习笔记:第二章 列表和元组
  19. CWnd与HWND的区别与转换
  20. webpack react &#21333;&#29420;&#25171;&#21253; CSS

热门文章

  1. &lt;构建之法&gt;13——17章的读后感
  2. 使用PHP + Apache访问有错误的php脚本时不报错
  3. Tomcat启动错误一例org.apache.catalina.core.StandardContext resources Start Error starting static Resources
  4. C++拷贝构造函数的调用时机
  5. CentOS virt-manager 安装Win2008r2的一种GUI方法
  6. Node require
  7. MES架构
  8. 用SoapUI 测试Web Service
  9. 软件工程_2nd weeks
  10. rabbitmq使用报错总结