掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1546|回复: 23

[新版发布] flask-mdict 架设自己的 MDict Web Server

[复制链接]
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

    发表于 2019-3-22 12:21:41 | 显示全部楼层 |阅读模式
    购买主题 已有 73 人购买  本主题需向作者支付 5 粒米 才能浏览

    本帖被以下淘专辑推荐:

    该用户从未签到

    发表于 2019-3-22 13:33:29 | 显示全部楼层
    这就是远程查询嘛,好东东
  • TA的每日心情
    慵懒
    2020-7-19 14:44
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    发表于 2019-3-22 16:57:31 | 显示全部楼层
    我按楼主说的flask run运行提示:没有模块 ‘mdict’ pip安装后运行提示 ! M$ Y& D$ y$ d, `) Z
    AttributeError: module ‘mdict’ has no attribute 'init_app'0 x4 _6 H# W' N) ?+ T$ k1 z
    不能正常访问网页
  • TA的每日心情
    慵懒
    4 天前
  • 签到天数: 350 天

    [LV.8]以坛为家I

    发表于 2019-3-22 20:37:17 | 显示全部楼层
    真的不太懂,本人技术不行,可否简化了发布
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-22 21:00:46 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-22 21:27 编辑
    ; {, {5 ~4 `& B! M+ P
    dengao 发表于 2019-3-22 16:57  N9 f( E) |  t% R
    我按楼主说的flask run运行提示:没有模块 ‘mdict’ pip安装后运行提示
    / w8 Y/ R3 K  {5 _+ B1 g+ PAttributeError: module ‘mdict ...

    7 S0 {: I6 v6 d) K运行:flask run6 B& O" a: b1 j0 q; `
    试试
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-22 21:26:58 | 显示全部楼层

    * a' o6 j+ O. _& l! f$ n这个版本有点问题,我已经更新,请重新下载,链接不变2 F& g! {' C/ u/ W
    9 D: k3 m7 L4 s7 x

    9 g1 h+ ~1 v' K* L. w3 Z& H! `
    : _# s/ ^5 x3 W" T- t
  • TA的每日心情
    开心
    前天 12:30
  • 签到天数: 725 天

    [LV.9]以坛为家II

    发表于 2019-3-23 09:25:12 | 显示全部楼层
    楼主我运行了falsk run 后,访问http://127.0.0.1:5000,屏幕上出现了提示:“127.00.1:5000拒绝了连接,请查看代理服务器和防火墙设置”
  • TA的每日心情
    开心
    前天 12:30
  • 签到天数: 725 天

    [LV.9]以坛为家II

    发表于 2019-3-23 09:45:42 | 显示全部楼层
    楼主,我刚才没说清楚,我说的是用手机打开http://127.0.0.1:5000,出现了127.0.0.1拒绝连接的提升,可能还要进一步要怎么设置,使我的手机跟电脑处于一个网络?
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-23 13:22:54 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-23 13:24 编辑 # T2 [. b. V% d5 s6 Y
    Budha 发表于 2019-3-23 09:45
    6 `6 [7 t" _: v1 X3 F+ [楼主,我刚才没说清楚,我说的是用手机打开http://127.0.0.1:5000,出现了127.0.0.1拒绝连接的提升,可能还 ...
    5 Z# i' A( E0 Z9 F0 p
    http://127.0.0.1:5000 只能用本机访问
    $ r! p" X! o5 m  I: u/ h7 ~; V# V
    如果用手机访问,需要改写下 mdict_start.cmd 文件,然后访问你电脑的 http://<your_pc_ip>:5000/
    & c* _0 g$ ]% q- U7 _2 f0 @& P改为
    8 Q0 x* S) x# X* y. e9 H
    1. python\scripts\flask.exe run --host 0.0.0.0
    复制代码
    ) ~$ D; p5 g. v& C6 P
  • TA的每日心情
    开心
    前天 12:30
  • 签到天数: 725 天

    [LV.9]以坛为家II

    发表于 2019-3-23 14:44:15 | 显示全部楼层
    我运行绿色版的失败了,我就用第一种方法在本机上访问成功,但在手机上失败,按照第一种方法的话要改啥文件,怎么改?
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-23 15:35:51 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-23 15:39 编辑 6 e4 R8 r  ~; m0 |9 H; J
    Budha 发表于 2019-3-23 14:44
    4 T; q  }& d. z4 i0 V4 U9 }6 u1 I我运行绿色版的失败了,我就用第一种方法在本机上访问成功,但在手机上失败,按照第一种方法的话要改啥文件 ...
    ; E2 A- t$ j; @2 e
    如果你自己安装的 python/flask 运行环境,那么直接运行 flask.exe run --host 0.0.0.0
    . W) W, m; Z& G& x0 A8 I0 h. m/ R2 m: ^
    如果用我提供的运行环境 python\scripts\flask.exe run --host 0.0.0.0, 前面就多个路径6 n1 T! |" h6 h' c  D3 A

    , K) S) G! D$ }: s) Z6 ]4 k查看您 PC的IP地址,用手机或其他在同一网络的电脑访问 http://<pc_ip>:5000/
    1 m7 N. U! A/ K5 C/ g请重新下载 mdict 源码文件,刚修复一个界面问题。
    : s4 N& _. y$ e. _1 c3 \: y6 ^; E
  • TA的每日心情
    慵懒
    2020-7-19 14:44
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    发表于 2019-3-23 15:47:26 | 显示全部楼层
    楼主超赞,多谢搞定了
  • TA的每日心情
    开心
    前天 12:30
  • 签到天数: 725 天

    [LV.9]以坛为家II

    发表于 2019-3-23 17:24:41 | 显示全部楼层
    我的意思是我电脑一直开着,我人在外面上班或在外地出差,我远程访问家里的电脑,调用词典,楼主的程序可以实现吗?
  • TA的每日心情
    开心
    2019-1-21 17:00
  • 签到天数: 376 天

    [LV.9]以坛为家II

    发表于 2019-3-23 19:07:51 | 显示全部楼层
    本帖最后由 simonfire 于 2019-3-23 19:35 编辑
    ; q2 s7 I: l# B$ u" w
    Budha 发表于 2019-3-23 17:24
    + m% O; y( T, K- }. k9 z8 t我的意思是我电脑一直开着,我人在外面上班或在外地出差,我远程访问家里的电脑,调用词典,楼主的程序可以 ...

    ; D& f9 X% K5 W+ d5 i! @6 J这个和程序没关系,关键在于你能不能远程访问家里的电脑
    8 J! ?3 h( m9 r* |& H: ^! L0 D! N! {% _* D

    4 g' k1 Y: ~8 ]7 s& w/ R+ y在Ubuntu上简单试用了一下,很不错。
    & `- k7 T- e' G0 Z* ?
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-23 20:52:57 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-23 20:55 编辑 - t# H0 g% I1 q% C: ?
    Budha 发表于 2019-3-23 17:24
    8 Z/ N0 F  F' r; U* g; a( u我的意思是我电脑一直开着,我人在外面上班或在外地出差,我远程访问家里的电脑,调用词典,楼主的程序可以 ...
    2 D4 t  w. u: O" }5 ~. Z1 n% _$ B
    可以办到,但主要功能不是我提供的, }1 Z9 p: p8 {2 c$ w
    - Q% c$ B* E5 K; z. B
    1. 首先,运行我的程序,家里内网的机器可以正常访问
    6 S- g# d/ e  c0 v" ]2. 在家里 AP 路由上做地址转换
    * N" O2 t+ P8 ?5 c$ |) r1 `    例如,映射外部端口 5000,到家里内网  <pc_ip>:50003 b- Z* Y$ d8 ]6 w* Y8 H; e
    5 h( b8 z& |# x  }! ~3 \* D; i
    注意:
    & k4 d9 {- ]& i# B3 a5 v! R6 c   1. 家里 PC IP 要求是静态 IP,动态 IP (DHCP) 不可以0 Q! L& r5 `7 r* k. g2 Q2 Q
       2. 你要知道当前确切的外网地址,即 家里 AP 路由在 Internet 上的 IP 地址。这个地址可能每天都会变化,可以通过 DDNS 解决
    7 g/ b( K9 M8 L: d   3. 映射的外网端口不能是 80,或 443 ,ISP 禁止; q+ O) S/ ?* f

    ) E" N1 K7 d  C. F' a总之,主要是网络的问题,不是我程序的问题。太多 IT 术语,属于专业问题,没法细说。
    ; U6 v; l! Z- I8 X# W" _( p* Z0 x. ?' b* `# k, N6 _9 X
  • TA的每日心情
    开心
    2019-3-26 21:36
  • 签到天数: 178 天

    [LV.7]常住居民III

    发表于 2019-3-23 23:32:47 | 显示全部楼层
    本帖最后由 流星冲击 于 2019-3-23 23:36 编辑
    3 t  M3 i  H4 v/ q* N: z
    $ p' K# B3 x+ U4 R% z词典code一定要规范,是不是做到xhtml标准的那种程度?
    4 r% W. F- P( c4 k1 p( a6 p, a还有就是,可不可以做成直接支持mdx的txt源码?并且进一步优化源码的支持,例如词头有good|well|best三个同义词,用“|”符号进行分隔,用以替代[email protected]@@的功能,查这三个词都是指向good这个词头,这个功能在babylon、stardict、lingoes都是有的,这个功能对于制作小语种的同义词非常好用。
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-24 05:29:36 | 显示全部楼层
    流星冲击 发表于 2019-3-23 23:32
    : F4 h5 j1 J& C  `& e% _) A词典code一定要规范,是不是做到xhtml标准的那种程度?6 w7 W+ |* N1 j
    还有就是,可不可以做成直接支持mdx的txt源码?并且进 ...

    % k  }! J' c5 c3 f0 ~6 z词典code一定要规范,是不是做到xhtml标准的那种程度?6 u5 z: c3 B* {
    确切的说,是的。因为词典code是 HTML 代码,各大软件都按 XHTML 标准支持,现在是 HTML5,其次再做一些冗余性调整,越规范,兼容性越好。0 s# H+ u/ ^; N
    4 S% {; Z% I' R: l. T/ P
    txt源码没做过,不清楚,但理论上可以,但可能会牺牲通用性。HTML 软件原生支持,TXT 格式千变万化,没有统一标准,支持性就差了
  • TA的每日心情
    开心
    2019-3-26 21:36
  • 签到天数: 178 天

    [LV.7]常住居民III

    发表于 2019-3-24 05:48:07 | 显示全部楼层
    zzzz_sleep 发表于 2019-3-24 05:29, h0 T3 l9 y& F, u4 _, m; Y: G
    词典code一定要规范,是不是做到xhtml标准的那种程度?
    ! G4 z" X" I; q7 B5 `, {4 F: K确切的说,是的。因为词典code是 HTML 代码,各大 ...

    . |7 ^; d% B. c* ]6 smdx源码的txt都是有规律的,利用正则可以提取词头生成索引,txt文件太大,可以用dictzip压缩成dz(gzip文件)然后读取内容。
  • TA的每日心情
    开心
    前天 12:30
  • 签到天数: 725 天

    [LV.9]以坛为家II

    发表于 2019-3-24 07:37:11 | 显示全部楼层
    zzzz_sleep 发表于 2019-3-23 20:52
    9 f+ V9 [! r" R可以办到,但主要功能不是我提供的
    ( |% x# i0 L4 e) X: e& Y
    $ M6 t7 c8 x, J8 d1. 首先,运行我的程序,家里内网的机器可以正常访问
    ! ]) y( T2 N+ g+ n
    谢谢楼主解答,我家里的电脑是直接连在“光猫”上,500M的宽带,一个月1T流量后会降到300M,这是个基本情况,这样设置的话是不是要简单点?
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-24 11:09:59 | 显示全部楼层
    Budha 发表于 2019-3-24 07:37& w* s$ d3 D% Z1 E: s* h
    谢谢楼主解答,我家里的电脑是直接连在“光猫”上,500M的宽带,一个月1T流量后会降到300M,这是个基本情 ...
    0 Q. P7 h8 Z  P+ E) b
    0 u+ B9 f7 ]' \" U( I: V7 j
    是简单些,但是会危险些
    # q) b: C+ K1 V2 R! l2 @' W2 E- _( d, L7 O5 e- ^3 Y0 n9 ]' r' v
    简单:1 M3 g2 J& X9 ^2 n, F" x5 ^
    直接连光猫上,PC 是需要拨号才能上网吧,查看拨号后的IP,应当是 Internet 公网IP,直接用手机访问这个 公网 IP 加 5000,即可。不需要网络端口映射
    ' [. a. M$ P# ]% V  n5 c. X( c: ~7 l9 X
    危险:" V, ~1 S6 M1 D
    PC 直连到 Internet 上,没有经过防火墙隔离(Windows自带的不算)容易招到网络攻击,windows 补丁不能及时更新,容易被人攻入
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-24 11:18:08 | 显示全部楼层
    流星冲击 发表于 2019-3-24 05:48
    # E- W/ n) ?* F, h' K8 Wmdx源码的txt都是有规律的,利用正则可以提取词头生成索引,txt文件太大,可以用dictzip压缩成dz(gzip文 ...

    8 s7 r# H6 w! W- x; V4 b. S; c是可以生成索引,直接显示,但 TXT 格式变化有限,不支持字体,颜色,排版等复杂需求,直接显示到用户终端很丑陋,需要根据 TXT 指令转换为复杂的 HTML 格式才能解决。
    , U  W4 B) R. b
    ; p% g7 D: P6 b这个转换可以动态转换,即显示一个词条时,先将 TXT 转换为 HTML,再显示# @8 w& Q7 Y: S4 d( @8 Q
    静态转换,先全部转换 TXT 格式到 HTML,显示时直接传递0 }7 e5 A$ P" Z/ W' P

    $ S, K6 ?9 g/ V" g4 l9 k5 h( F) t显然第二种方法更有效率,用户体验更好。
    0 r* K8 |. g- ]. _- X3 I, y
  • TA的每日心情
    开心
    前天 12:30
  • 签到天数: 725 天

    [LV.9]以坛为家II

    发表于 2019-3-24 13:16:05 | 显示全部楼层
    zzzz_sleep 发表于 2019-3-24 11:099 I( w$ k7 |: W2 m% z
    是简单些,但是会危险些* X" @# T  y6 d; W0 d/ D0 r9 i, d) c

    6 ~9 N# ?& g7 c$ J2 K% w/ X简单:
    5 m+ g8 j" i8 ^9 X* F5 {
    我看了下一共有5个地址3 @9 Q1 Q5 W( z  t7 p! ^
    1.物理(mac)地址
    , T" t- U9 Z3 M/ R4 Q( C2.ipv4地址
    7 c7 z% e6 r! q$ n1 ?4 M3 F$ x3.ipv6地址* m6 m% |1 q# T$ n( g
    4.默认网关) e4 `7 Q; g; |
    5.dns服务器
    * S. d1 k4 a0 \+ b  u* _3 p: q9 {" k" f我再手机上应该在哪个地址后加5000?
  • TA的每日心情

    前天 11:45
  • 签到天数: 145 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-25 05:57:49 | 显示全部楼层
    Budha 发表于 2019-3-24 13:160 c* o8 |: x3 v
    我看了下一共有5个地址
    + F8 H9 M, B7 l5 t: F: B8 n+ I( N8 Q1.物理(mac)地址
      V5 V  h7 L: N% h5 [7 C2.ipv4地址
    ' {& K' H$ E# N
    2.ipv4地址' D- d/ R) S. F) f9 D3 ~0 B
    9 \; g1 z) c# z4 u# P
    ipv4:5000
  • TA的每日心情
    开心
    2020-5-8 16:59
  • 签到天数: 78 天

    [LV.6]常住居民II

    发表于 2019-6-22 23:07:37 | 显示全部楼层
    这么巧? 昨天顺手自己写了一个django版的。哈哈。仅仅支持txt,每次查询都动态生成转成html条目。就不发表了。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    顶部qrcode底部
    关注公众号送论坛充值码
    关注微信公众平台
    关注微信公众号 pdawiki,获取邀请码,看文抢积分,抽奖得浮云! Follow our Wechat official account "pdawiki", get invitation codes, and play the lottery to earn points (积分)!

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2020-8-7 06:03 , Processed in 0.443029 second(s), 15 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表