好我们可以用 Python 完成这项工作。下面就分享一下如何用 Python 解析一个PDF文件,将其转为一列关键字。
设置:
本教程我们使用的是 Python 3.6.3,当然在实际工作中你可以使用任何你喜欢的 Python 版本,只要它支持用到的库就行。
需要安装以下 Python 库:
PyPDF2(用于将简单的基于文本的 PDF 文件转为 Python 可读的文本)
Textract(用于将 PDF 扫描文件转为 Python 可读的文本)
Nltk(用于清理短语、将短语转为关键字)
可以通过以下命令行安装这些库:
pip install PyPDF2
pip install textract
pip install nltk
这样我们就安装了解析 PDF 文件所需的库,一定要确保你的 PDF 文件放在你编写脚本所在的文件夹中。
启动编辑器,开始敲代码吧!
第一步:导入库
第2步:读取 PDF 文件
第3步:将文本转换为关键字
现在我们就将手中的 PDF 文件保存为了列表,可以按自己的需要使用了。如果想让 PDF 可搜索,或者解析大量文件进行聚类分析,还可以将得到的列表保存在电子表格中。
你好,老修来分享一下你的问题。
老修是去年自学的Python,刚刚开始选择的方向是自动化运维,不过现在主要用它来爬一些数据,自己做拍视频用,为此我特意写了三篇关于自学的文章(12个月,零基础自学Python语言心得分享-上篇(内含建议和方法)),你可以参考一下;
那这里我们谈谈你说的这个人工智能,这个是有一定门槛的,具体的就不谈了,说说如果自学可能性大吗?可能性比较低,可以很肯定的和你说,我们先来看看它的线路:
学完Python基础以后,是数据模块,它需要学些什么呢?首先需要大专以上,本科这样的数学基础,大概有:线性代数,微积分,代数,概率统计学,只是基础,也没真让我们去用它来算;后面对人工智能的Python算法,需要做好几个模块,比如Numpy等;那里边还有有神经网络,这里又有两个派系,所以需要学的很多,想通过自学,可能性很小,学会了,人家也不一定敢要你。
粗粗的我们就谈这些,希望我的回答能帮到你。
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语法还不熟悉,最好先把框架熟悉一遍,多做些练习。
谢谢邀请
Python 可以说是一匹黑马了,伴随着人工智能,大数据的发展而渐渐步入人们的视野,其实python 的学习是不复杂的,因为从他都已经列入小学生教材了,可以看出他的入门,并不需要多大的门槛。下面我们具体说下python 的学习方法和学习途径。
1.学习方法
首先python 也是一门编程语言
如果你要是没有编程基础,那么你肯定要从最基本的熟悉键盘下手,因为如果作为一名程序员如果你连盲打都不会,那么你的技术肯定不咋样呵。
在对键盘熟悉后,你就要非常勤奋的敲代码,不管你是跟着网上教程学,还是去培训班学习,在讲师讲解的时候,一定要跟上,有问题当天必须要解决,相信我,人都是有惰性的。老师留下的课后习题,也要认认真真的完成,多多请教比你技术好的人。
另外当今互联网这么发达,你要善于借助互联网,自己私下在网上搜索一些demo,从简单到复杂,跟着练习,前期的话,你可以先看懂别人的代码,最后再自己慢慢动手做。
2.学习途径
说到学习途径的话,我这里有两个建议。
第一,你可以去进入一个培训班学习,当然了,这个是要交学费的,交学费一是给培训机构了,二来也是对自己的一个交代,因为交过钱你会更加努力的学习。
第二,你可以借助当下互联网环境,现在网上这种的公开课已经有很多了,但大都是入门免费,深入收费,如果你有良好的自制力和自学能力,那么你不妨试试这种方式,毕竟学习自由,收费相对较低。
以上就是我的回答,希望能帮到你,如各位看官有更好的建议,不妨也提出来,信息分享,最后祝你学必成,成必过。
总结,以上就是关于python菜鸟教程 pdf以及如何从Python中提取PDF文档信息的经验分享,卡友有疑问可以加wx或扫码加群!Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有