Bash,从 pdf 中获取链接

Bash,从 pdf 中获取链接

操作系统 乌班图。

需要 在终端中获取从 pdf 到文本的链接或更多数据(例如 QuarkXPress 应用程序的绑定层)。

尝试过 pdf转文本,但似乎链接没有导出, pdfgrep是一样的。

有什么解决办法吗?

谢谢。

答案1

您可以尝试手动提取/URI(...)PDF 指令,也许在删除压缩(如果有)之后使用pdftk

pdftk file.pdf output - uncompress | grep -aPo '/URI *\(\K[^)]*'

答案2

使用pdf文件并过滤以以下开头的所有行- http

pdfx -v file.pdf | sed -n 's/^- \(http\)/\1/p'

答案3

测试一下:

pdftotext -raw "filename.pdf" && file=`ls -tr | tail -1`; grep -E "https?://.*" "${file}" && rm "${file}"

脚本示例

答案4

首先,您需要检查您的pdf是否经过压缩,请参阅:

如何知道 PDF 文件是否已压缩以及如何压缩(解压缩)

如果是压缩的,则需要将其解压。

然后,您可以使用grep和提取链接sed

strings uncompressed.pdf | grep -Eo '/URI \(.*\)' | sed 's/^\/URI (//g; s/)$//g'

相关内容