내 도시 수도 요금 청구서는 서버에서 호스팅되는 최신 PDF에 대한 링크로 매달 나에게 이메일로 전송됩니다. 이렇게 하면 언제든지 이 PDF를 쉽게 다운로드할 수 있습니다. 이 PDF를 받고 계정 잔액을 인출하려면 어떻게 해야 합니까? 이메일을 보내거나 문자 메시지를 보내거나 이와 유사한 것을 보내십시오.
답변1
코드는 세부 사항에 따라 다르지만 일반적인 접근 방식은 다음과 같습니다.
- 홈페이지에 로그인(?)
wget
파일에 링크된 페이지를 이용하거나 다운로드하세요curl
- 페이지에서 PDF 링크를 받으세요
wget
파일 사용 또는 다운로드curl
pdftotext
poppler-utils 또는 유사한 도구를 사용하여 PDF에서 텍스트 추출- 또는 so를 사용하여
grep
텍스트 결과에서 원하는 데이터를 가져옵니다.
가장 복잡한 부분은 필요한 경우 로그인 프로세스입니다.
댓글을 남길 때 로그인할 필요가 없으며 고정된 URL이 있어 확실히 단순화됩니다. PDF를 다운로드하고 텍스트 콘텐츠를 직접 사용하여 데이터를 추출할 수 있습니다. 아래는 샘플 PDF 파일에서 행을 추출하는 예입니다. 이 줄에는 단어 ghostview
와 버전 번호가 포함되어 있으며 예제 값으로 사용할 수 있습니다.
$ u='http://www.wave.org.au/jupgrade/images/sample.pdf'
$ curl -s "$u" | pdftotext - - | grep 'ghostscript '
• ghostscript ≥ 5.10 (for example from Red Hat Contrib) and ghostview
다음 단계는 간단한 숫자 값을 추출하는 것일 수 있습니다.
답변2
어쩌면 당신은 사용할 수 있습니다pdftotext
:
$ pdftotext -layout transaction.pdf - | grep -C1 amount
19876.0
amount paid
이 프로그램은 소프트웨어 패키지의 일부이며 poppler-utils
다음 명령을 사용하여 설치할 수 있습니다.
sudo apt-get install poppler-utils
이 옵션은 PDF 레이아웃을 최대한 가깝게 따르는 -layout
데 사용됩니다 (그렇지 않으면 내 PDF 테이블 레이아웃이 텍스트 양식의 수와 거리가 멀습니다).pdftotext
amount paid