BibTeX/BibLaTeX 引文格式化实用程序

BibTeX/BibLaTeX 引文格式化实用程序

我有一个巨大的 URL 引用列表。它只是 URL,没有其他内容,采用 csv 或每行一个格式。是否有某种工具或实用程序可以用来遍历此列表以检索页面标题并将其格式化为 BibTeX?或者类似的东西?

我可以自己编写一个脚本,但如果已经有可用的脚本,我没时间重新发明轮子。这不是我第一次需要 BibTeX 参考资料的小助手,所以我认为我不是唯一一个需要的人。

就像是引用此文如果它可以将列表作为输入,那将是理想的。

答案1

这是我草草写出来的。
它不会赢得任何风格奖,但对于手头的任务来说已经足够了。
欢迎您使用、修改、分发,随便什么都可以。
如果您自己写的话,它至少可以为您节省一些时间。

#!/usr/bin/env python3

import sys
import requests,urllib3
from bs4 import BeautifulSoup 

titles = []
count  = 0
with open(sys.argv[-1]) as f:
  urls = list(f)

urllib3.disable_warnings()
try:
  for url in urls:
    try:
      html = requests.get(url=url,verify=False)
      if html.status_code in (400,404):
        raise requests.exceptions.InvalidURL()
    except (requests.exceptions.InvalidURL):
      continue
    except (requests.exceptions.ConnectionError):
      continue

    soup = BeautifulSoup(html.text,'lxml')
    try:  
      title = soup.find('title').string
      titles.append(title)
      print('@misc{'+str(count)+',')
      print('    url   = '+url,end='')
      print('    title = '+title,end='\n}\n')
      count += 1
    except (AttributeError):
      continue 
except (KeyboardInterrupt):
  print(); exit()

相关内容