summaryrefslogtreecommitdiff
path: root/scraper/s2-extract-pdf-txt.py
blob: da0445f49bcc066364ed504c87314245b2013692 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import os
import sys
import csv
import subprocess
import time
import random
import re
import simplejson as json
import click
import glob
from multiprocessing import Pool
from s2 import SemanticScholarAPI
from util import *

s2 = SemanticScholarAPI()

@click.command()
def extract_pdf_txt():
  fns = []
  for fn in glob.iglob('datasets/s2/pdf/*/*/*.pdf'):
    path = os.path.dirname(fn)
    out_fn = os.path.join(path, 'paper.txt')
    if not os.path.exists(out_fn):
      fns.append((fn, out_fn))
  parallelize(extract_txt, fns)

def extract_txt(in_fn, out_fn):
  subprocess.call([
    "pdf2txt.py",
    '-p', '1', in_fn,
    '-o', out_fn,
  ])

if __name__ == '__main__':
  extract_pdf_txt()