pyautogui_pdf批量转换为TXT
pyautogui_pdf批量转换为TXT,
用pdf自带无损转换

# -*- coding: utf-8 -*-
"""
Created on Thu May 5 15:39:54 2016 一定要有time.sleep(1)时间控制,否则出错
pdf另存文本,效果可能很差
typewrite("content") 用于输入文字
typewrite(["right","left","up"]) 用于输入连续键盘按钮
@author: daxiong
""" import pyautogui,time,os dir_file="C:/Users/daxiong/Desktop/test"
#获取文件夹的文件名
fileNames=os.listdir(dir_file) #打开存储PDF软件;(50,50)为pdf坐标
pyautogui.doubleClick(50,50)
time.sleep(1) for fileName in fileNames:
#打开第一个PDF,按热键Ctrl+o即可
pyautogui.hotkey("ctrl","o")
time.sleep(1)
#输入PDF文件名,并进入
pyautogui.typewrite(fileName)
time.sleep(1)
pyautogui.press("enter")
time.sleep(1)
#另存为纯文本
pyautogui.hotkey("shift","ctrl","s")
time.sleep(1)
pyautogui.press("tab") #切换到下面的保存格式
time.sleep(1)
pyautogui.press("down")
time.sleep(1)
pyautogui.typewrite(["down","down","down","down","down","down","down","down"\
,"down","down","down","down","down","down","down","down","down","down"\
,"down","down","enter"]) #选择储存路径
pyautogui.press('f4') #定位地址栏
time.sleep(1)
pyautogui.hotkey("ctrl","a") #选中内容
time.sleep(1)
pyautogui.press('delete') #删除旧的地址
time.sleep(1)
pyautogui.typewrite(dir_file)
time.sleep(1)
#连续按下10个tab就到保存按钮
pyautogui.typewrite(["tab","tab","tab","tab","tab","tab","tab","tab","tab",\
"tab","enter"])
#关闭PDF,组合键ctrl+w
time.sleep(2)
pyautogui.hotkey("ctrl","w") pyautogui.hotkey("ctrl","q")
办公室电脑测试代码
pdf_to_txt
# -*- coding: utf-8 -*-
"""
Created on Thu May 12 11:22:57 2016
pdf更换为最新版本,尝试提高转换成功率。
txt必须转换为纯文本格式
等待时间必须和pdf页码数匹配
@author: Administrator
""" import pyautogui,time,os,PyPDF2 dir_file="C:/Users/Administrator/Desktop/test/pdf/"
#获取文件夹的文件名
fileNames=os.listdir('.')
pdf_fileNames=[i for i in fileNames if os.path.splitext(i)[1]==".pdf"] def Get_time(filename):
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<=10:
sleepTime=pages+2
else:
sleepTime=15 return sleepTime #打开存储PDF软件;(50,50)为pdf坐标
pyautogui.doubleClick(50,50)
time.sleep(3) for fileName in fileNames:
#打开第一个PDF,按热键Ctrl+o即可
pyautogui.hotkey("ctrl","o")
time.sleep(1)
#输入PDF文件名,并进入
pyautogui.typewrite(fileName)
time.sleep(2)
pyautogui.press("enter")
time.sleep(1)
#另存为纯文本
pyautogui.hotkey("shift","ctrl","s")
time.sleep(1)
pyautogui.press("tab") #切换到下面的保存格式
time.sleep(1)
pyautogui.press("down") time.sleep(1)
#不准确
pyautogui.typewrite(["down","down","down","down","down","down","down","down"\
,"down","down","down","down","down","down","down","down","down","down","enter","enter"]) sleepTime=Get_time(fileName)
#关闭PDF,组合键ctrl+w
time.sleep(sleepTime)
pyautogui.hotkey("ctrl","w") pyautogui.hotkey("ctrl","q")
txt 文件包提取到excel
# -*- coding: utf-8 -*-
"""
Created on Thu May 12 14:05:06 2016
1.先用filenameToExcel.exe程序导入文件名
2.B11写入me_txt
3.批量写入内容 list不能写入cell,str才可以.txt必须是纯文本格式
@author: Administrator
""" import PyPDF2,os,openpyxl,sys,time,xlrd
from openpyxl.cell import get_column_letter,column_index_from_string #开始时间
timeBegin=time.clock()
excelFileName="test.xlsx"
wb=openpyxl.load_workbook(excelFileName)
sheet=wb.active
columnIndex="A"
start=1
expandName=".txt"
expandName_upper=expandName.upper() excelFile = xlrd.open_workbook(excelFileName)
table = excelFile.sheet_by_index(0) #通过索引顺序获取
#A列的单元格
cells_columnA=sheet.columns[0]
#B列单元格
cells_columnB=sheet.columns[1] #content="你好" def Get_col_values(i):
list_col_values=table.col_values(i)
list_col_values1=list_col_values[1:]
return list_col_values1 def single_txt_extract(filename,i):
try:
txtFileObj=open(filename)
#不知道readlines()效果和readline相比如何,要测试
content=txtFileObj.read() except:
print ("wrong when read txt:",filename) cells_columnB[i+1].value=content #list不能写入cell,str才可以.txt必须是纯文本格式
txtFileObj.close() list_pdf_fileNames=Get_col_values(0) single_txt_extract("1151.txt",0) wb.save(excelFileName)
pyautogui_pdf批量转换为TXT的更多相关文章
- 如何将lrc歌词文件批量转换为ANSI编码?
有些MP3.MP4或学习机只能播放ANSI编码的歌词文件,可是从网站上下载的歌词大多是UTF-8或者其它机器支持不了的编码,如何批量将这些lrc歌词文件转换成ANSI编码的文件呢? 工具/原料 萍客T ...
- Bilibili手机端下载的Download文件批量转换为MP4软件【Bilibili_DownVideoToMp4】原创发布
Bilibili手机端下载的Download文件批量转换为MP4软件[Bilibili_DownVideoToMp4]原创发布 起因 Bilibili手机端的视频下载下来只能在手机上看,手机屏幕太小看 ...
- 【百度地图API】如何批量转换为百度经纬度
原文:[百度地图API]如何批量转换为百度经纬度 摘要: 百度地图API的官网上提供了常用坐标转换的示例.但是,一次只能转换一个,真的非常麻烦!!这里结合了官方的示例,自制一个批量转换工具,供大家参考 ...
- C# CAD批量转换为图片
最近写了个工具,将指定目录下的CAD文件批量转换为图片格式. 首先需要添加对应的引用 : 在AutoCAD2008的环境下对应AutoCAD 2008 Type Library 和 AutoCAD/O ...
- 多表批量导出txt及打压缩包下载
在一些特殊的业务系统中,有些客户查看报表数据时不需要在浏览器上逐一查看,需要在页面端选择要查看的报表名称(可多选),选择条件,然后将所选中的报表批量导出到txt文件中并且要把批量导出的结果文件打 ...
- 如果把PNG、JPG、BMP和GIF文件批量转换为ICO文件?
有时候需要将大量的图片文件(比如PNG.JPG.BMP和GIF文件)批量转换为ICO图标文件,如果一个一个操作,非常费时间.本文将介绍如何用Dr. Folder软件快速批量转换图片文件为ICO图标文件 ...
- R语言笔记004——R批量读取txt文件
R批量读取txt文件 本文数据,代码都是参考的是大音如霜公众号,只是自己跟着做了一遍. path<-'C:\\Users\\Administrator\\Desktop\\docs' docs& ...
- python批量创建txt文件,以demo.txt内的内容为文件名
#批量创建txt文件import sys,osa=open("demo.txt")n=0aList=[]for line in a.readlines(): aList.appen ...
- linux格式批量转换为dos格式
注:写的只是基本知识,望高手勿喷,写这个不是为了炫耀,只是为了方便其他人,仅此而已. 一:脚本功能: 批量处理目录以及子目录下的文件格式问题,能够轻易的将linux格式转换为dos格式. 二:写此博客 ...
随机推荐
- linux第一次读书笔记
第一章 LINUX内核简介 1.1 Unix的历史 1969年的夏天,贝尔实验室的程序员们在一台PDR-7型机上实现了Unix这个全新的操作系统. 1973年,整个Unix系统用C语言进行了重写,给后 ...
- Oracle系列(三): 情景查询一 a表中有个fid字段,逗号分隔开来,b表中有id字段及其他信息,如何关联a表的fid和和b表的id字段查询
现在有两个表,表a中 DOC FID 1 a,b,c 2 a,c,d 表b中 ID KEY a A b B c C d D 怎么联合查询出 DOC FID KEY 1 a,b,c A,B,C 2 a, ...
- java可变参数长度
一: 在python中 有可变参数*args和万能参数**args参数分别为列表和字典.在java中也有类似的可变参数列表.不过传递进去的是可变参数数组. package com.company; p ...
- C#改变图片大小
今天一女同事要做一个改变图片大小的功能,然后我就手写了几行代码,以后可能用得上 byte[] buffer = new byte[1]; //Byte转为Image对象 MemoryStream ms ...
- 开源通用爬虫框架YayCrawler-页面的抽取规则定义
本节我将向大家介绍一下YayCrawler的核心-页面的抽取规则定义,这也是YayCrawler能够做到通用的主要原因之一.如果我要爬去不同的网站的数据,尽管他们的网站采用的开发技术不同.页面的结构不 ...
- HTML5 Base64_encoding_and_decoding
https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding In JavaSc ...
- 虚拟机使用不同CPU配置时内存性能的差异
第一款机器的配置: CPU(s): 8On-line CPU(s) list: 0-7Thread(s) per core: 1Core(s) per socket: 4座: 2NUMA 节点: 1 ...
- laravel 在nginx服务器上除了首页其余都是404的问题
nginx对应站点的.conf配置文件添加如下代码 location / { try_files $uri $uri/ /index.php$is_args$query_string; #语法: tr ...
- Delphi下EasyGrid使用体会
最近在编写软件的时候,非常需要一款支持多表头的StringGrid控件,朋友介绍使用EasyGrid控件,这款控件大概从04年开始就没有再更新,网上有关与它的资料也较少.但是通过其demo,此软件还是 ...
- React 组件库框架搭建
前言 公司业务积累了一定程度,需要搭建自己的组件库,有了组件库,整个团队开发效率会提高恨多. 做组件库需要提供开发调试环境,和组件文档的展示,调研了几个比较主流的方案,如下: docz 配置简单,功能 ...