提交 a038506e 编写于 作者: H hjdhnx

项目升级,增强ocr

上级 0639d5f5
......@@ -149,6 +149,7 @@ def base64_ocr():
f.write(img_bytes)
ocr = OcrApi(ocr_api)
code = ocr.classification(img_bytes)
resp = R.success('识别成功',code)
print(resp.json)
# resp = R.success('识别成功',code)
# print(resp.json)
resp = code
return resp
###### 2023/03/28
- [X] 3.9.41beta1 ocr功能优化,内置道长自建ddddocr 可配置自定义内部alist格式的接口 推荐配置为 https://api.nn.ci/ocr/b64/text
###### 2023/03/22
- [X] 3.9.40beta5 修复 /js 路径未注入环境变量问题
......
3.9.40beta9
\ No newline at end of file
3.9.41beta1
\ No newline at end of file
......@@ -55,7 +55,7 @@ function pre(){
}
let rule = {};
const VERSION = 'drpy1 3.9.39beta1 20230316';
const VERSION = 'drpy1 3.9.41beta1 20230328';
/** 已知问题记录
* 1.影魔的jinjia2引擎不支持 {{fl}}对象直接渲染 (有能力解决的话尽量解决下,支持对象直接渲染字符串转义,如果加了|safe就不转义)[影魔牛逼,最新的文件发现这问题已经解决了]
* Array.prototype.append = Array.prototype.push; 这种js执行后有毛病,for in 循环列表会把属性给打印出来 (这个大毛病需要重点排除一下)
......@@ -92,7 +92,8 @@ const OCR_RETRY = 3;//ocr验证重试次数
// const OCR_API = 'http://dm.mudery.com:10000';//ocr在线识别接口
// const OCR_API = 'http://192.168.3.239:5705/parse/ocr';//ocr在线识别接口
// const OCR_API = 'http://cms.nokia.press/parse/ocr';//ocr在线识别接口
const OCR_API = 'http://cms.nokia.press:5707/parse/ocr';//ocr在线识别接口
// const OCR_API = 'http://cms.nokia.press:5707/parse/ocr';//ocr在线识别接口
const OCR_API = 'http://drpy.nokia.press:8028/ocr/drpy/text';//ocr在线识别接口
if(typeof(MY_URL)==='undefined'){
var MY_URL; // 全局注入变量,pd函数需要
}
......@@ -832,9 +833,12 @@ var OcrApi={
classification:function (img){ // img是byte类型,这里不方便搞啊
let code = '';
try {
let html = request(this.api,{data:{img:img},headers:{'User-Agent':PC_UA},'method':'POST'},true);
html = JSON.parse(html);
code = html.url||'';
// let html = request(this.api,{data:{img:img},headers:{'User-Agent':PC_UA},'method':'POST'},true);
// html = JSON.parse(html);
// code = html.url||'';
log('通过drpy_ocr验证码接口过验证...');
let html = request(OCR_API,{data:{img:img},headers:{'User-Agent':PC_UA},'method':'POST'},true);
code = html||'';
}catch (e) {}
return code
}
......@@ -1117,10 +1121,19 @@ function getHtml(url){
}
let cookie = getItem(RULE_CK,'');
if(cookie){
// log('有cookie:'+cookie);
if(obj.headers && ! Object.keys(obj.headers).map(it=>it.toLowerCase()).includes('cookie')){
log('历史无cookie,新增过验证后的cookie');
obj.headers['Cookie'] = cookie;
}else if(obj.headers && obj.headers.cookie && obj.headers.cookie!==cookie){
obj.headers['Cookie'] = cookie;
log('历史有小写过期的cookie,更新过验证后的cookie');
}else if(obj.headers && obj.headers.Cookie && obj.headers.Cookie!==cookie){
obj.headers['Cookie'] = cookie;
log('历史有大写过期的cookie,更新过验证后的cookie');
}else if(!obj.headers){
obj.headers = {Cookie:cookie};
log('历史无headers,更新过验证后的含cookie的headers');
}
}
let html = getCode(url,obj);
......
此差异已折叠。
......@@ -41,7 +41,7 @@ function pre(){
let rule = {};
let vercode = typeof(pdfl) ==='function'?'drpy2.1':'drpy2';
const VERSION = vercode+' 3.9.39beta1 20230316';
const VERSION = vercode+' 3.9.41beta1 20230328';
/** 已知问题记录
* 1.影魔的jinjia2引擎不支持 {{fl}}对象直接渲染 (有能力解决的话尽量解决下,支持对象直接渲染字符串转义,如果加了|safe就不转义)[影魔牛逼,最新的文件发现这问题已经解决了]
* Array.prototype.append = Array.prototype.push; 这种js执行后有毛病,for in 循环列表会把属性给打印出来 (这个大毛病需要重点排除一下)
......@@ -1024,10 +1024,19 @@ function getHtml(url){
}
let cookie = getItem(RULE_CK,'');
if(cookie){
// log('有cookie:'+cookie);
if(obj.headers && ! Object.keys(obj.headers).map(it=>it.toLowerCase()).includes('cookie')){
log('历史无cookie,新增过验证后的cookie');
obj.headers['Cookie'] = cookie;
}else if(obj.headers && obj.headers.cookie && obj.headers.cookie!==cookie){
obj.headers['Cookie'] = cookie;
log('历史有小写过期的cookie,更新过验证后的cookie');
}else if(obj.headers && obj.headers.Cookie && obj.headers.Cookie!==cookie){
obj.headers['Cookie'] = cookie;
log('历史有大写过期的cookie,更新过验证后的cookie');
}else if(!obj.headers){
obj.headers = {Cookie:cookie};
log('历史无headers,更新过验证后的含cookie的headers');
}
}
let html = getCode(url,obj);
......
此差异已折叠。
......@@ -25,7 +25,8 @@ def test():
# code = requests.post(api, data=base64.b64encode(img).decode(), headers={'user-agent': PC_UA}, verify=False).text
# code = requests.post(api, data=base64.b64encode(img).decode(), headers={'user-agent': PC_UA}, verify=False).text
# code = requests.post(api3, data={"img":base64.b64encode(img).decode()}, headers={'user-agent': PC_UA}, verify=False).text
code = requests.post(api4, data={"img":base64.b64encode(img).decode()}, headers={'user-agent': PC_UA}, verify=False).text
# code = requests.post(api4, data={"img":base64.b64encode(img).decode()}, headers={'user-agent': PC_UA}, verify=False).text
code = requests.post(api3, data={"img":base64.b64encode(img).decode()}, headers={'user-agent': PC_UA}, verify=False).text
except Exception as e:
print(f'ocr识别发生错误:{e}')
code = ''
......
......@@ -70,7 +70,6 @@ function search(wd, quick) {
console.log('测试验证码地址:',yzm_url);
let img_base64 = req(yzm_url,{buffer:2}).content;
console.log(img_base64);
// const res = req('https://api.nn.ci/ocr/b64/text', {body:img_base64,method:'POST'});
const res = req('http://drpy.nokia.press:8028/ocr/drpy/text', {data:{img:img_base64},method:'POST'});
console.log('验证码识别结果:',res.content);
let d = [];
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册