鱼C论坛

 找回密码
 立即注册
查看: 264|回复: 5

求一个国内好用的PDF文档解析API

[复制链接]
发表于 2024-2-27 14:08:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
如题,最近开发一个项目,需要用到PDF文档解析,文心用的OpenAI的ChatFile,所以不提供API接口,国内是否还有其他好用的开放API的PDF文档解析呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-27 14:09:17 | 显示全部楼层
在国内,有一些好用的开放API可以用于PDF文档解析。以下是其中几个较受欢迎的选择:

1. 百度AI开放平台:百度提供了一套强大的OCR(光学字符识别)服务,可以将PDF中的文字内容提取出来。你可以访问百度AI开放平台并注册账号,然后使用OCR接口对PDF进行解析。

2. 腾讯云OCR:腾讯云提供了一套OCR服务,也可以用于PDF文档解析。你需要前往腾讯云开放平台注册账号,并使用OCR接口完成PDF文档的解析。

这些平台都提供了详细的使用文档和示例代码,你可以根据文档中的说明进行接入和调用。以百度AI开放平台为例,下面是一个简单的Python代码示例,展示了如何使用百度OCR接口解析PDF文档:

  1. import requests

  2. # 请求URL
  3. url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic"
  4. # 获取token地址
  5. token_url = "https://aip.baidubce.com/oauth/2.0/token"

  6. # 获取access_token
  7. def get_access_token():
  8.     # 填写自己的API Key和Secret Key
  9.     client_id = "Your API Key"
  10.     client_secret = "Your Secret Key"
  11.    
  12.     params = {
  13.         "grant_type": "client_credentials",
  14.         "client_id": client_id,
  15.         "client_secret": client_secret
  16.     }
  17.     response = requests.get(token_url, params=params)
  18.     result = response.json()
  19.    
  20.     return result["access_token"]

  21. # 解析PDF文档
  22. def parse_pdf(pdf_path, access_token):
  23.     with open(pdf_path, 'rb') as f:
  24.         pdf_content = f.read()

  25.     headers = {'Content-Type': 'application/x-www-form-urlencoded'}
  26.     params = {
  27.         'access_token': access_token,
  28.         'type': 'pdf',
  29.         'detect_direction': 'true'
  30.     }
  31.     data = {'image': pdf_content}

  32.     response = requests.post(url, headers=headers, params=params, data=data)
  33.     result = response.json()
  34.    
  35.     # 处理解析结果
  36.     if 'error_code' in result:
  37.         print('解析失败,错误码:', result['error_code'])
  38.     else:
  39.         for item in result['data']:
  40.             print(item['words'])

  41. # 获取access_token
  42. access_token = get_access_token()
  43. # 解析PDF文档
  44. parse_pdf('your_pdf_path', access_token)
复制代码


以上代码仅为示例,你需要替换其中的API Key和Secret Key,并提供待解析的PDF文件路径。具体使用方法请参考对应平台的文档。

希望对你有帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-2-27 15:12:27 | 显示全部楼层
不要通用OCR文字解读,要PDF全文分析
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-27 15:13:04 | 显示全部楼层
Banky 发表于 2024-02-27 15:12
不要通用OCR文字解读,要PDF全文分析


如果你需要对PDF文档进行全文分析,提取文字、表格、图像等元素的结构化数据,可以尝试使用以下国内的PDF解析API:

1. 腾讯云PDF解析:腾讯云提供了一套PDF解析服务,可以将PDF文档转换为可编辑的文本格式,并提供表格识别、图像提取等功能。你需要前往腾讯云开放平台注册账号,并使用PDF解析API完成相应操作。具体的使用文档和示例代码可以在腾讯云开放平台上找到。

2. 百度文档识别:百度AI开放平台提供了文档识别服务,支持PDF文档的结构分析、文字提取、表格解析等功能。你可以通过百度AI开放平台注册账号,并根据文档中的指引进行PDF文档解析。同样,你可以在百度AI开放平台上找到详细的使用文档和示例代码。

以下是一个使用腾讯云PDF解析API的简单Python代码示例:

  1. import requests

  2. # 通过腾讯云接口解析PDF文档
  3. def parse_pdf(pdf_url, secret_id, secret_key):
  4.     url = "https://recognition.image.myqcloud.com/ocr/pdf"
  5.     headers = {
  6.         "Host": "recognition.image.myqcloud.com",
  7.         "Content-Type": "application/json"
  8.     }
  9.     data = {
  10.         "url": pdf_url,
  11.         "appid": "1251234567",  # 替换为自己的腾讯云App ID
  12.         "bucket": "your-bucket",  # 替换为存放PDF的腾讯云存储桶名称
  13.         "region": "ap-guangzhou",  # 替换为对应的地域信息
  14.         "is_sync": True
  15.     }
  16.     auth = {
  17.         "Authorization": "TC3-HMAC-SHA256 Credential={}/2020-12-19/image/tc3_request, SignedHeaders=content-type;host, Signature={}".format(secret_id, secret_key)
  18.     }
  19.     response = requests.post(url, json=data, headers=headers, auth=auth)
  20.     result = response.json()
  21.     if result.get("code") == 0:
  22.         text_result = result.get("result").get("TextResult")
  23.         # 提取结构化的文字数据进行后续处理
  24.         print(text_result)
  25.     else:
  26.         error_message = result.get("message")
  27.         print("解析失败,错误信息:", error_message)

  28. # 使用腾讯云API解析PDF文档
  29. parse_pdf("your_pdf_url", "your_secret_id", "your_secret_key")
复制代码


请替换代码中的相关参数,并提供符合要求的PDF文件URL。具体API调用方法请参考对应平台的文档。

希望对你有帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-11 09:37:34 | 显示全部楼层
FishC 发表于 2024-2-27 15:13
如果你需要对PDF文档进行全文分析,提取文字、表格、图像等元素的结构化数据,可以尝试使用以下国内的P ...

如何用Flask框架提取一个SQL对应的“question”列的所有内容到word文档,请帮我写一段Python代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-11 09:37:52 | 显示全部楼层
Banky 发表于 2024-03-11 09:37
如何用Flask框架提取一个SQL对应的“question”列的所 ...


当使用Flask框架提取数据库中的内容并生成Word文档时,可以使用python-docx库来操作Word文档。以下是一个示例代码,展示了如何使用Flask框架和python-docx库来提取数据库中某一列的内容,并将其保存到Word文档中:

  1. from flask import Flask, render_template
  2. from docx import Document

  3. app = Flask(__name__)

  4. # 假设数据库连接已经配置好,数据表名为questions,"question"列存放问题内容


  5. @app.route('/export', methods=['GET'])
  6. def export_to_word():
  7.     # 查询数据库,获取所有question的内容
  8.     data = query_questions()

  9.     # 创建Word文档
  10.     document = Document()

  11.     # 添加标题
  12.     document.add_heading('Questions', level=1)

  13.     # 添加问题内容
  14.     for question in data:
  15.         document.add_paragraph(question)

  16.     # 保存Word文档
  17.     document.save('questions.docx')

  18.     return 'Export to Word successfully!'


  19. def query_questions():
  20.     # 连接数据库,查询question列的内容并返回
  21.     # 在这里编写你的数据库查询代码
  22.     # 假设你已经获得了问题的内容列表q_list
  23.     q_list = ["Question 1", "Question 2", "Question 3"]
  24.     return q_list


  25. if __name__ == '__main__':
  26.     app.run(debug=True)
复制代码


在上述代码中,我们首先使用Flask创建了一个路由`/export`,在该路由下定义了一个名为`export_to_word`的函数,用于从数据库中提取问题内容并生成Word文档。其中的`query_questions()`函数用于模拟查询数据库,返回问题内容列表。

在`export_to_word`函数中,我们使用python-docx库创建一个空的Word文档,然后根据查询到的问题内容逐个添加到文档中。最后通过调用`document.save('questions.docx')`保存生成的Word文档。

最后,当你运行该Flask应用并访问`/export`路由时,程序会从数据库中获取问题内容,并生成名为`questions.docx`的Word文档。

请注意,这只是一个简单的示例代码,你需要根据你的实际情况进行相应的修改和完善,特别是关于数据库连接和查询部分。希望对你有所帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 18:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表