当前位置: 首页 > news >正文

桃花岛网站是什么株洲seo优化

桃花岛网站是什么,株洲seo优化,凡科自助建站平台,制作网站公司服务器租赁一年的费用办公文档处理:在企业日常办公中,经常会遇到大量的扫描文档(如发票、合同、报表等)以图片或 PDF 格式存储。需要将这些文档中的特定区域信息(如发票金额、合同条款、报表数据等)提取出来,整理到 …

办公文档处理:在企业日常办公中,经常会遇到大量的扫描文档(如发票、合同、报表等)以图片或 PDF 格式存储。需要将这些文档中的特定区域信息(如发票金额、合同条款、报表数据等)提取出来,整理到 Excel 表格中,以便进行数据分析、统计和进一步处理。

数据采集与整理:对于从事数据采集工作的人员,从各种图片和 PDF 资料中提取特定区域的信息,并汇总到 Excel,能够快速整合数据,为后续的数据挖掘和分析提供基础。

详细代码步骤

  1. 创建 QT 项目并配置环境
    • 打开 QT Creator,创建一个新的 Qt Widgets Application 项目。
    • 在项目的.pro文件中添加以下内容:
QT += network
LIBS += -L/path/to/libxlsxwriter -lxlsxwriter
  • 请将/path/to/libxlsxwriter替换为实际的libxlsxwriter库路径。
  1. 读取图片和 PDF 文件
    • 对于图片,使用QPixmap类读取。
    • 对于 PDF 文件,使用 Poppler 库(需要先安装 Poppler 库并在项目中配置好)。以下是读取 PDF 并将其转换为图片的示例代码:
#include <Poppler/Document.h>
#include <QPixmap>
#include <QFile>QPixmap pdfPageToPixmap(const QString& pdfFilePath, int pageNumber) {Poppler::Document* doc = Poppler::Document::load(pdfFilePath);if (!doc || doc->isLocked()) {delete doc;return QPixmap();}doc->setRenderHint(Poppler::Document::Antialiasing);doc->setRenderHint(Poppler::Document::TextAntialiasing);QPixmap pixmap = doc->page(pageNumber)->renderToPixmap(300, 300);delete doc;return pixmap;
}
  1. 调用阿里云 API 进行文字识别
    • 首先,需要构建 HTTP 请求并发送。以下是使用QNetworkAccessManager发送 POST 请求的示例代码,假设使用阿里云通用文字识别 API:
#include <QNetworkAccessManager>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QUrlQuery>
#include <QJsonObject>
#include <QJsonDocument>
#include <QFile>
#include <QBuffer>
#include <QCryptographicHash>
#include <QDateTime>QString getBase64FromPixmap(const QPixmap& pixmap) {QByteArray byteArray;QBuffer buffer(&byteArray);pixmap.save(&buffer, "PNG");return byteArray.toBase64();
}void sendOcrRequest(const QPixmap& pixmap, const QString& accessKeyId, const QString& accessKeySecret) {QNetworkAccessManager* manager = new QNetworkAccessManager(this);QUrl url("https://ocr.cn - hangzhou.aliyuncs.com/ocr/general");QUrlQuery query;query.addQueryItem("AccessKeyId", accessKeyId);query.addQueryItem("Format", "JSON");query.addQueryItem("Version", "2019 - 12 - 30");QString timestamp = QDateTime::currentDateTimeUtc().toString(Qt::ISODate);query.addQueryItem("Timestamp", timestamp);query.addQueryItem("SignatureMethod", "HMAC - SHA1");query.addQueryItem("SignatureVersion", "1.0");QString content = getBase64FromPixmap(pixmap);QJsonObject requestBody;requestBody["image"] = content;QJsonDocument doc(requestBody);QByteArray postData = doc.toJson(QJsonDocument::Compact);QString stringToSign = "POST&%2Focr%2Fgeneral&" + QUrl::toPercentEncoding(query.toString(QUrl::FullyEncoded));QByteArray hmac = QCryptographicHash::hash(QByteArray(accessKeySecret + "&").toUtf8(), QCryptographicHash::Sha1);QString signature = QUrl::toPercentEncoding(QByteArray(hmac.toBase64().trimmed()));query.addQueryItem("Signature", signature);url.setQuery(query);QNetworkRequest request(url);request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");QNetworkReply* reply = manager->post(request, postData);connect(reply, &QNetworkReply::finished, [reply]() {if (reply->error() == QNetworkReply::NoError) {QByteArray responseData = reply->readAll();QJsonDocument responseDoc = QJsonDocument::fromJson(responseData);QJsonObject responseObj = responseDoc.object();// 处理识别结果} else {qDebug() << "请求失败: " << reply->errorString();}reply->deleteLater();});
}
  1. 解析识别结果并写入 Excel
    • 解析阿里云 API 返回的 JSON 数据,提取所需信息。然后使用libxlsxwriter库将信息写入 Excel 文件。
#include "xlsxwriter.h"void writeToExcel(const QString& filePath, const QList<QString>& dataList) {lxw_workbook* workbook = workbook_new(filePath.toUtf8().constData());lxw_worksheet* worksheet = workbook_add_worksheet(workbook, NULL);for (int i = 0; i < dataList.size(); ++i) {worksheet_write_string(worksheet, i, 0, dataList[i].toUtf8().constData(), NULL);}workbook_close(workbook);
}

  1. 批量处理
    • 遍历指定文件夹下的所有图片和 PDF 文件,依次进行处理。
#include <QDir>void batchProcess(const QString& folderPath, const QString& accessKeyId, const QString& accessKeySecret) {QDir dir(folderPath);foreach (QString file, dir.entryList(QDir::Files)) {if (file.endsWith(".pdf")) {QString pdfFilePath = folderPath + "/" + file;int pageCount = 0;Poppler::Document* doc = Poppler::Document::load(pdfFilePath);if (doc &&!doc->isLocked()) {pageCount = doc->numPages();delete doc;}for (int i = 0; i < pageCount; ++i) {QPixmap pixmap = pdfPageToPixmap(pdfFilePath, i);sendOcrRequest(pixmap, accessKeyId, accessKeySecret);}} else if (file.endsWith(".jpg") || file.endsWith(".png")) {QString imageFilePath = folderPath + "/" + file;QPixmap pixmap(imageFilePath);sendOcrRequest(pixmap, accessKeyId, accessKeySecret);}}
}

在实际应用中,你需要将accessKeyIdaccessKeySecret替换为你自己的阿里云访问密钥,并根据实际需求进一步完善代码,例如处理更复杂的识别结果解析、优化 Excel 写入格式等。

http://www.tj-hxxt.cn/news/110995.html

相关文章:

  • 做网站需要怎么样的服务器上海抖音seo
  • 建网上商城的第三方网站哪个好网络推广方式
  • 网站服务器一年多少钱西安网站seo诊断
  • php动态网站开发实训微信广告平台
  • 抚顺建设银行网站百度推广助手
  • 解除网站开发合同 首付款是否退交换链接平台
  • 网站开发都用什么浏览器网站优化外包费用
  • 做网站怎么去进行链接学软件开发学费多少钱
  • 湖南长沙网站建设公司电话seo计费系统开发
  • 福州做网站设计互联网推广广告
  • 推广网站seo关键词排名快速提升
  • dedecms wap网站模板线下推广宣传方式有哪些
  • 茂名公司制作网站种子搜索器
  • 长沙专业网站设计惠州seo代理
  • 做网站需要的知识职业技能培训平台
  • 西安网站建设公司找哪家廊坊seo整站优化
  • 网站如何做内链爱站官网
  • 技术网站有哪些巨量算数关键词查询
  • 公众号开发是前端还是后端上海seo公司哪个靠谱
  • wordpress主题 侧边栏宽度google关键词优化
  • 做赌博网站的代理算赌博罪吗seo网络优化教程
  • 大连大型网站制作公司互联网营销师是做什么的
  • 我的世界做图片的网站seo自学网视频教程
  • 下列属于b2b电子商务网站的是永久免费个人网站注册
  • 新冠疫情最新数据消息百度搜索引擎优化的方法
  • 网站设计建设企业站长统计app软件大全
  • 网站建设公司调查报告惠州网站seo
  • 曲靖网站建设公司靖网站建设小红书推广引流软件
  • 什么是网络营销产品组合策略seo主要优化哪些
  • 手机app开发 网站建设沈阳关键字优化公司