如何阅读上传到Google云端硬盘的PDF文件的内容?

时间:2019-06-26 10:29:32

标签: php google-api google-drive-api google-api-php-client

我想阅读上载到Google驱动器的PDF文件的内容。内容应采用人类可读的格式,而不是二进制格式。现在,我正在使用Google Drive API读取内容,但无法做到这一点。

 $fileId = $request['thesis_google_id'];
    $response = $service->files->get($fileId,   array(
    'alt' => 'media'));
    $content = $response->getBody()->read(2024);

2 个答案:

答案 0 :(得分:0)

Google Drive API的核心功能是在Google云端硬盘中下载和上传文件。该API无法让您读取任何内容,它只是为您存储文件并允许您下载文件。

Google Docs api确实允许您访问读写文件,但是我怀疑它仅支持google docs格式的文件,而不支持PDF。

您将需要在本地下载文件,然后使用某种形式的PHP PDF阅读器来读取它。

答案 1 :(得分:0)

您可以使用Google Drive REST API提供的Files: export方法来获取PDF文件的内容。 .pdf文件的导出方法不会返回图像,但是文件中的所有文本都可以导出为易于阅读的格式。 here列出了可以导出到的受支持的MIME类型。

在PHP中,您可以通过以下代码来实现:

$fileId = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$response = $service->files->export($fileId, 'MIMEType', array(
    'alt' => 'media'));
$content = $response->getBody()->getContents();

您的应用程序至少需要具有Google Docs的读取权限才能执行此操作,并且应包含查询参数alt=media