Php 如何读取上传到Google Drive的PDF文件的内容?
我想阅读上传到谷歌硬盘的PDF文件的内容。内容应该是人类可读的格式,而不是二进制格式。现在我正在使用GoogleDriveAPI来读取内容,但无法做到这一点Php 如何读取上传到Google Drive的PDF文件的内容?,php,google-api,google-drive-api,google-api-php-client,Php,Google Api,Google Drive Api,Google Api Php Client,我想阅读上传到谷歌硬盘的PDF文件的内容。内容应该是人类可读的格式,而不是二进制格式。现在我正在使用GoogleDriveAPI来读取内容,但无法做到这一点 $fileId = $request['thesis_google_id']; $response = $service->files->get($fileId, array( 'alt' => 'media')); $content = $response->getBody()->
$fileId = $request['thesis_google_id'];
$response = $service->files->get($fileId, array(
'alt' => 'media'));
$content = $response->getBody()->read(2024);
的核心功能是在Google Drive中下载和上载文件。这个API不允许您读取任何内容,它只为您存储文件并允许您下载它们 它确实允许您访问读写文件,但我怀疑它只支持google文档格式的文件,而不支持PDF格式的文件
您需要在本地下载该文件,然后使用某种形式的PDF reader for PHP读取该文件。您可以使用提供的
文件:导出
方法来获取PDF文件的内容。.pdf
文件的导出方法不会返回图像,但文件中的所有文本都可以导出为人类可读的格式。下面列出了可导出到的受支持的MIME类型
在PHP中,您可以通过以下代码实现这一点:
$fileId = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$response = $service->files->export($fileId, 'MIMEType', array(
'alt' => 'media'));
$content = $response->getBody()->getContents();
要做到这一点,您的应用程序至少需要Google文档的读取权限,并且应该包括查询参数
alt=media
@Rata Guillermo我正在使用此方法,但仍然无法读取我的Google Drive PDF文件的内容。我正在为我的项目使用以下范围。请检查一下,如果我遗漏了什么,请告诉我。您在尝试运行代码时是否遇到错误,如果是,是什么错误?另外,请确保将export
方法中的'MIMEType'
更改为所需的MIMEType,在本例中为'application/pdf'
。我没有收到任何错误,但也没有收到内容。我将MIMEType更改为application/pdf。调用getContents()
后,content
的值是多少?