目标:我需要从.ppt文件中提取表格中的文字(列名称为姓名,地址,联系电话,电子邮件等)。为此,我采用了这种方法:
我将.ppt文件转换为pdf,然后使用PDFminer从pdf中提取数据。从pdf中提取的文本不会被任何分隔符分隔。因此,很难区分表中的名称和其他字段。
我正在研究的可能解决方案:
我在第一步将文件格式从.ppt转换为.pptx。 我找不到任何解决方案将.ppt文件格式转换为python中的.pptx formt。
答案 0 :(得分:1)
我创建了此代码,希望它对您有用:
import org.apache.spark.sql.SparkSession
import org.apache.spark.sql.types._ //import everything from the package
import org.apache.spark.sql.expressions.{Window => W}
import org.apache.spark.sql.{functions => F}
import org.apache.spark.SparkContext
import com.amazonaws.services.glue.GlueContext
import com.amazonaws.services.glue.util.GlueArgParser
import com.amazonaws.services.glue.DynamicFrame
import com.amazonaws.regions.Regions
import com.amazonaws.services.glue.model._
import com.amazonaws.services.glue.{AWSGlue, AWSGlueClient}
import scala.collection.JavaConverters.{mapAsJavaMapConverter, seqAsJavaListConverter}
import com.amazonaws.services.sagemaker.sparksdk.IAMRole
val sc = spark.sparkContext
val glueContext: GlueContext = new GlueContext(sc)
val region = Regions.fromName("us-east-1")
// Function to create AWS glue client
def glueClient(region: Regions):
AWSGlue = AWSGlueClient.builder().withRegion(region).build()
val glue = glueClient(region =region)
glue.getConnection("{Name: name-of-embedded-connection,HidePassword: False}")
答案 1 :(得分:0)
对于MacOS Homebrew用户:安装Apache Tika(brew install tika
)
命令行界面的工作方式如下:
tika --text something.ppt > something.txt
并在python脚本中使用它:
import os
os.system("tika --text temp.ppt > temp.txt")
你将能够做到这一点,这是我迄今为止唯一的解决方案。