首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从python的url中读取.odt和.doc文件

从python的url中读取.odt和.doc文件
EN

Stack Overflow用户
提问于 2021-01-21 09:34:11
回答 1查看 551关注 0票数 0

如何使用python从url中提取“.odt”和“.doc”格式文件中的文本?我试着去找,但什么也找不到。

任何线索都会有帮助。

代码语言:javascript
运行
复制
from odf import text, teletype
from odf.opendocument import load
 
textdoc = load(r"C:\Users\OMS\Downloads\sample1.odt")
allparas = textdoc.getElementsByType(text.P)
for i in range(len((allparas))):
    a=teletype.extractText(allparas[i])
    print(a)

这适用于本地.odt文件,但现在我需要从

代码语言:javascript
运行
复制
"https://abc.s3.ap-south-1.amazonaws.com/sample1.odt"

假设连接到aws s3已经使用boto3完成。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-21 14:26:06

下面是用Python3.6和测试odt文件进行测试;

代码语言:javascript
运行
复制
import boto3
import io
from odf import text, teletype
from odf.opendocument import load

s3_client = boto3.resource('s3') #TODO: change aws connection logic as per your setup


# TODO: refactor name, readability
def get_contents(file_name):
    obj = s3_client.Object('s3_bucket_name', file_name)  # TODO: change aws s3 bucket name as per your setup
    body = obj.get()['Body'].read()
    return load(io.BytesIO(body))


textdoc = get_contents("test.odt")  # TODO: change odt file name as per your setup
allparas = textdoc.getElementsByType(text.P)
for i in range(len((allparas))):
    a = teletype.extractText(allparas[i])
    print(a)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65824602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档