# !/usr/bin/env/python
# -*- coding:utf-8 -*-
from flask import Flask, render_template, request
from datetime import timedelta
import requests
from utils.img2latex import get_ocrlatex_by_url
headers = {'Pragma': 'no-cache', 'Cache-Control': 'no-cache',
'X-USER-TOKEN': 'eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIyMCIsInVzZXJOYW1lIjoiSFgwMDEyMTM4IiwiZXhwIjoxNTY2Mzg3ODA1LCJ1c2VySWQiOiIyMCIsImlhdCI6MTU2NjM3MzQwNX0.9w__2RGncpdMvbiQAmk75ThgPwDaTXF1VyY1xKVs_zFduUEoJ3_6X2q3ZVYsFIpChKeLEWelhwlmMxEP4lU9QA',
'Origin': 'http://xx.cn',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.157 Safari/537.36',
'Accept': '*/*',
# 'Content-Type': 'multipart/form-data; boundary=----WebKitFormBoundarycDnnz7eKalCPv6GJ',
'Referer': '', 'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8'}
url = "http://192.168.1.140:18085/upload"
import json
data = {'callback_url': "http://zsytk.dev.xueping.com/wordapi/index/wid/9668",
"mydata": json.dumps([{"file_type": "", "file_url": "http://zsytk.dev.xueping.com/data/word/2020/08/5f327c08f3576.doc"}],ensure_ascii=False).encode("utf-8")
}
# print(requests.Request('POST', url, data=data, json=json).prepare().body.decode(
# 'ascii')) # 打印字段名和类型
# r = requests.post(url, data=data, headers=headers)
# print(r.text)
#
# { %
# for sub in item[2:5] %}
# { % if "src" in sub %}
# < img
# src = "data:;base64,{{ img_stream }}" >
# { % endif %}
# { % endfor %}
import re
pattern_2 = re.compile(
r"(([CDE]\s*[..、、]|\([CDE]\)).+?)(?3)
# p1 = re.search("(?)'.format(m),
# sub1, item_str)
#
# items_list = eval(item_str)
# print(items_list)
# 入库时将latex替换为图片测试
from pprint import pprint
ltx2url = {"\\begin{array}{cccccccc}& \\text{CO}& \\text{+}& {\\text{H}}_{\\text{2}}\\text{S}& \\stackrel{}{⇌}& \\text{COS}& \\text{+}& {\\text{H}}_{\\text{2}}\\\\ 开始\\text{/mol}& \\text{a}& & \\text{a}& & \\text{0}& & \\text{0}\\\\ 转化\\text{/mol}& \\text{x}& & \\text{x}& & \\text{x}& & \\text{x}\\\\ 平衡\\text{/mol}& \\text{a-x}& & \\text{a-x}& & \\text{x}& & \\text{x}\\end{array}": "",}
def sub2(s):
if s:
all_ltx = re.findall(r'\$.*?\$', s) # 查找试题结构中的公式
all_ltx.extend(re.findall('\\\\\(.*?\\\\\)', s))
all_ltx = list(set(all_ltx))
for ltx in all_ltx:
new_ltx = ltx.replace("$", "").replace("\\(", "").replace("\\)", "").replace("&", "&")
if new_ltx in ltx2url: # 将latex换为其渲染图片的线上可访问地址
s = s.replace(ltx, ltx2url[new_ltx])
return s
items_res_to_xbk = [
{"repeat_res": [],
"topic_type_id": 40,
"stem": "含硫废气的处理越来越成为化工生产等领域的重要课题。回答下列问题: 点所在象限为( ) 第一象限 第二象限 第三象限
Ⅰ.CO可将工业尾气中的转化为化工原料羰基硫(COS):。
(1)恒温恒容条件下,密闭容器中发生上述反应,下列事实不能说明反应达到平衡状态的是_______(填序号)。
a.
b.COS和的浓度之和保持不变
c.混合气体的平均相对分子质量不变
d.单位时间内断裂键与断裂键数目相等
(2)T℃时,在恒容的密闭容器中充入等物质的量CO和发生反应,实验测得反应前容器内压强为,10min达到平衡时的分压为。
①CO的平衡转化率为_______(用含、的代数式表示),
②该反应的平衡常数_______(用含、的代数式表示,列出表达式即可)。
(3)在某密闭容器中,以一定投料比进行上述反应,相同时间内的转化率与温度(T)的关系如图所示,_______(填“>”或“<”)0,其原因是_______。
Ⅱ.工业尾气中的是环境污染的主要原因之一,工业上可采用钙基固硫法或电解法降低尾气中的含硫量。
(4)已知:
a.
b.
c.
则_______。在一定温度下,该反应达到平衡时向容器中通入少量,则反应再次达到平衡时将_______(填“增大”“减小”或“不变”)。
(5)利用如图所示装置可吸收工业尾气中的,同时还可吸收尾气中的NO。电解池中膜c为_______(填“阴”或“阳”)离子交换膜,阴极的电极反应为_______,当利用此装置吸收标准状况下2.24LNO时,阳极区溶液质量变化量为_______。
",
"key": "(1)acd
(2)
(3) < 反应达平衡后,温度升高,的转化率降低,升温平衡逆向移动,故正反应方向为放热反应
(4) -402kJ/mol 不变
(5) 阳 6.2g",
"parse": "(1)a.任意时刻均有,反应不一定达到了平衡,a符合题意;
b.COS和的浓度之和保持不变,说明正逆反应速率相等,达到了平衡,b不符合题意;
c.反应物生成物都是气体,质量守恒不变,气体的物质的量不变,故混合气体的平均相对分子质量永远不变,故混合气体的平均相对分子质量不变不一定达到了平衡,c符合题意;
d.反应达到平衡时,单位时间内断裂2个键同时断裂1个,故断裂键与断裂键数目相等时,没有达到了平衡,d符合题意;
答案选acd;
(2)根据题意,设初始的CO的物质的量为amol,转化了xmol,可得$\\begin{array}{cccccccc}& \\text{CO}& \\text{+}& {\\text{H}}_{\\text{2}}\\text{S}& \\stackrel{}{⇌}& \\text{COS}& \\text{+}& {\\text{H}}_{\\text{2}}\\\\ 开始\\text{/mol}& \\text{a}& & \\text{a}& & \\text{0}& & \\text{0}\\\\ 转化\\text{/mol}& \\text{x}& & \\text{x}& & \\text{x}& & \\text{x}\\\\ 平衡\\text{/mol}& \\text{a-x}& & \\text{a-x}& & \\text{x}& & \\text{x}\\end{array}$
测得反应前容器内压强为,10min达到平衡时的分压为,则P0=P1,
①CO的平衡转化率为×100%=;
②该反应的平衡常数=;
(3)反应达平衡后,温度升高,的转化率降低,升温平衡逆向移动,故正反应方向为放热反应。
(4)已知:
a.
b.
c.根据盖斯定律(b-c)/2+a即得到CaO(s)与SO2(g)反应生成CaSO3(s)的热化学方程式-402kJ/mol;
(5)b电极为H2O放电生成O2与H+,稀硫酸进入生成了浓硫酸,故电解池中膜c为阳离子交换膜;阴极得到电子发生还原反应,根据图可知是HSO在酸性条件下发生还原反应,生成S2O,其电极反应式为;根据图示,吸收池中S2O和NO是反应物,N2和HSO是生成物,则吸收池中除去NO的原理是2NO+2S2O+2H2O=N2+4HSO,标准状况下2.24LNO即0.1molNO时,需要0.1molS2O,则转移0.2mol电子,根据反应2SO2+O2=2SO3,阳极吸收0.1molSO2,质量增加为0.1mol×64g/mol=6.4g,通过阳离子交换膜的H+为0.2mol,质量减少0.2mol×1g/mol=0.2g,阳极区溶液质量变化量为6.4g-0.2g=6.2g。
"}
]
for one_items in items_res_to_xbk:
keys_items = ["stem", "key", "parse", "analysis", "options"]
# if one_items['img_status'] == 1 and ("stem_img" in one_items and one_items["stem_img"].strip()):
# keys_items = ["stem_img", "key_img", "parse_img", "options_img"]
for k in keys_items:
if k in one_items:
if k == "options":
one_items[k] = list(map(sub2, one_items[k]))
else:
one_items[k] = sub2(one_items[k])
# pprint(items_res_to_xbk[0])
# ^(\s*