python - 有没有办法通过python编译乳胶代码?
问题描述
import requests
import json
import jinja2
from PIL import Image
from jinja2 import Template
import os
from latex import build_pdf
latex_jinja_env = jinja2.Environment(
block_start_string = '\BLOCK{',
block_end_string = '}',
variable_start_string = '\VAR{',
variable_end_string = '}',
comment_start_string = '\#{',
comment_end_string = '}',
line_statement_prefix = '%%',
line_comment_prefix = '%#',
trim_blocks = True,
autoescape = False,
loader = jinja2.FileSystemLoader(os.path.abspath('.'))
)
url = 'https://api.unsplash.com/search/photos/?query='
inpt = 'hat'
access = ''
url = url +inpt+'&'+access
r = requests.get(url)
js = json.loads(r.text)
js = js["results"]
counter = 1
ids = list()
for item in js:
image = requests.get(item["urls"]["regular"])
file = open("image"+str(counter)+'.png', 'wb')
file.write(image.content)
file.close()
counter+=1
ids.append(item['id'])
d_ids = dict()
for item in ids:
url1 = 'https://api.unsplash.com/photos/' + item +'?'+ access
r1 = requests.get(url1)
js = json.loads(r1.text)
if js['exif'] == 'None':
break
d_ids[item] = js['exif']
f_list =list()
counter = 1
for item in d_ids:
im = 'image' + str(counter)
f_list.append([im,d_ids[item]['make'],d_ids[item]['model'],d_ids[item]['exposure_time'],d_ids[item]['aperture']])
counter+=1
template = latex_jinja_env.get_template('imgview.tex')
kinstarva = template.render(data = f_list,inpt =inpt)
latex_jinja_env.compile('imgview.tex')
s = open('final.tex', 'w')
s.write(kinstarva)
s.close()
这就是我上面的代码:我想做的是从 api 中提取数据并将其发送到乳胶代码。在乳胶代码中,它会格式化什么不是,然后创建一个pdf。但是我必须去texworks并运行代码来获取pdf。问题:有没有办法从上面的python代码中做到这一点?
解决方案
根据this answer,您可以使用以下代码用python编译latex程序。
import os
os.system("pdflatex mylatex.tex")
推荐阅读
- python - 用熊猫替换数据框中的 NaN 值
- python - Python3:Super() 方法对象不可调用
- angular - 如何将 cdkDropList 与自由拖动 cdkDrag 元素一起使用?
- google-apps-script - 如何在特定文件夹中创建电子表格?
- haskell - 如何正确包装由归纳数据类型索引的数据类型?
- node.js - Docker 容器膨胀
- apache-nifi - 从 NIFI InvokeHTTP 的 JSON 输出中删除配置数据,调用它自己的 API 获取所有处理器信息
- r - 在多个层次结构中进行汇总
- ios - 在 iOS 上配置 Firebase 应用后,Branch.io 深层链接停止工作
- sql - 如何从 SQL Server 表中恢复已删除的数据?