掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1547|回复: 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安装后运行提示 0 h7 Z. p& [$ U6 s( e6 G. r
    AttributeError: module ‘mdict’ has no attribute 'init_app'; N$ _" A0 f$ X
    不能正常访问网页
  • 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 编辑 , T4 c) f6 A# ?4 p; {) T# A
    dengao 发表于 2019-3-22 16:57/ i- `3 R( Y  p5 l# n
    我按楼主说的flask run运行提示:没有模块 ‘mdict’ pip安装后运行提示 ) P0 J3 K" F  @, l: W$ F
    AttributeError: module ‘mdict ...
    / S  ]- ]! ]/ }7 f; {+ ?! w
    运行:flask run
    ( d  V6 e2 ~: G0 b) ]; O试试
  • TA的每日心情

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

    [LV.7]常住居民III

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

    3 l( i) W. w# w" V这个版本有点问题,我已经更新,请重新下载,链接不变+ D3 B" `9 B: s

    $ J% d& g) J5 X6 O; G5 N8 q+ K3 u2 c3 ?
    4 R6 o, H! h4 E# p( j
  • 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 编辑
    0 A! W/ d0 J1 W! h
    Budha 发表于 2019-3-23 09:45
    - B6 D2 w% r! b) _& ~% ~楼主,我刚才没说清楚,我说的是用手机打开http://127.0.0.1:5000,出现了127.0.0.1拒绝连接的提升,可能还 ...
    6 U: `2 P$ H+ G/ C: j* n
    http://127.0.0.1:5000 只能用本机访问, S8 h6 y' K& A' ^. M2 }1 C

    9 u/ Z. N  I5 n0 K* W- V如果用手机访问,需要改写下 mdict_start.cmd 文件,然后访问你电脑的 http://<your_pc_ip>:5000/
    : W7 s4 I: u- @; o改为" P) B; r; _+ n% i6 M( X5 A/ U( F
    1. python\scripts\flask.exe run --host 0.0.0.0
    复制代码
    4 C2 D1 H2 E8 E! w4 Z; k
  • 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 编辑
    8 x7 P' u; @8 I# m. F2 O# i
    Budha 发表于 2019-3-23 14:447 r$ l4 P2 m# Y3 J) S
    我运行绿色版的失败了,我就用第一种方法在本机上访问成功,但在手机上失败,按照第一种方法的话要改啥文件 ...
    / X6 v/ ~1 A, O( x7 h8 T
    如果你自己安装的 python/flask 运行环境,那么直接运行 flask.exe run --host 0.0.0.0( p4 e9 {; o2 u' |' w5 \# J% Y5 }& k6 h

    ) k9 v$ s' b9 F; e6 h5 H如果用我提供的运行环境 python\scripts\flask.exe run --host 0.0.0.0, 前面就多个路径
    . ~. |, r9 I7 [' z4 z& `8 Q2 n0 C! S6 k
    查看您 PC的IP地址,用手机或其他在同一网络的电脑访问 http://<pc_ip>:5000/
    ! ~- i( z( ]4 M5 u请重新下载 mdict 源码文件,刚修复一个界面问题。( t, [  e# v9 S9 @) C
  • 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 编辑 : t2 Y2 F( D% g. s- Z" Q
    Budha 发表于 2019-3-23 17:24
    * z) ]" v! Z5 R! J  |我的意思是我电脑一直开着,我人在外面上班或在外地出差,我远程访问家里的电脑,调用词典,楼主的程序可以 ...

    ! c% e5 y% Z& c" a3 U这个和程序没关系,关键在于你能不能远程访问家里的电脑3 `" N. \3 y+ W3 v/ P$ g) q

    ' T; ~7 Y; w  w' I, k$ ?9 C1 U0 E; [& S" h1 p! g% {3 S% W
    在Ubuntu上简单试用了一下,很不错。- g# O' v& A2 }7 I2 Z3 ]
  • TA的每日心情

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

    [LV.7]常住居民III

     楼主| 发表于 2019-3-23 20:52:57 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-23 20:55 编辑 - J1 @; u' u# @$ _2 u7 Z
    Budha 发表于 2019-3-23 17:24) h% P# v! `. f5 {6 m: L  g  B+ K
    我的意思是我电脑一直开着,我人在外面上班或在外地出差,我远程访问家里的电脑,调用词典,楼主的程序可以 ...
    9 Z' J0 u- A0 p) e4 ?" |) G
    可以办到,但主要功能不是我提供的
    8 ^. l- T! n' L! r
    " V: n- A0 H0 a9 d1. 首先,运行我的程序,家里内网的机器可以正常访问, C  i3 r/ F" T) ]5 |$ x; k
    2. 在家里 AP 路由上做地址转换; m! j! O; E8 a% r+ x* e: X
        例如,映射外部端口 5000,到家里内网  <pc_ip>:50008 M6 x8 H; Y7 f4 t& w1 A. k

    ' `' Z: Y; J3 ]* V注意:# W! m6 }  w" W( Y( a3 e% F
       1. 家里 PC IP 要求是静态 IP,动态 IP (DHCP) 不可以
    - W0 A- d5 _6 y6 b! {   2. 你要知道当前确切的外网地址,即 家里 AP 路由在 Internet 上的 IP 地址。这个地址可能每天都会变化,可以通过 DDNS 解决
    + W1 [; t$ p2 V: m   3. 映射的外网端口不能是 80,或 443 ,ISP 禁止
    5 j- w& z7 @  w* \$ H5 ]  k
    ( H' L) a) [* `8 z总之,主要是网络的问题,不是我程序的问题。太多 IT 术语,属于专业问题,没法细说。, @" ?; X. {0 s' I
    ( P5 W+ k1 P/ I1 I, o
  • TA的每日心情
    开心
    2019-3-26 21:36
  • 签到天数: 178 天

    [LV.7]常住居民III

    发表于 2019-3-23 23:32:47 | 显示全部楼层
    本帖最后由 流星冲击 于 2019-3-23 23:36 编辑
    4 {3 q6 e1 [! j5 s9 y
    % c3 B+ W2 `/ Y' `  r词典code一定要规范,是不是做到xhtml标准的那种程度?( I7 h) Y3 j$ ]8 t! X9 j
    还有就是,可不可以做成直接支持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
    ; c; f& n& h& \2 V- a! r词典code一定要规范,是不是做到xhtml标准的那种程度?
    ( ^) O" C8 ]/ l还有就是,可不可以做成直接支持mdx的txt源码?并且进 ...

    6 B. g, j8 `) a9 V& H1 D词典code一定要规范,是不是做到xhtml标准的那种程度?
    6 e% Z+ [, C9 w3 D确切的说,是的。因为词典code是 HTML 代码,各大软件都按 XHTML 标准支持,现在是 HTML5,其次再做一些冗余性调整,越规范,兼容性越好。5 c# ~$ b! L' Q( Y: h
    $ {) k& F5 I8 |7 C0 T( v
    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
    $ U1 F7 `. r4 N* @$ G4 h词典code一定要规范,是不是做到xhtml标准的那种程度?$ [& X3 j2 u) T# t6 v
    确切的说,是的。因为词典code是 HTML 代码,各大 ...

    8 Z0 ]) v1 V6 E3 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
    3 X0 m, L, Q) C* }/ S4 a2 Q可以办到,但主要功能不是我提供的
    ; V" ?1 g1 w" d+ m" V# |
    - e( S1 L/ N+ i1. 首先,运行我的程序,家里内网的机器可以正常访问
    ' N7 v0 b5 Z4 M% J& I( Z
    谢谢楼主解答,我家里的电脑是直接连在“光猫”上,500M的宽带,一个月1T流量后会降到300M,这是个基本情况,这样设置的话是不是要简单点?
  • TA的每日心情

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

    [LV.7]常住居民III

     楼主| 发表于 2019-3-24 11:09:59 | 显示全部楼层
    Budha 发表于 2019-3-24 07:37( `! K! e1 ]6 ^8 a
    谢谢楼主解答,我家里的电脑是直接连在“光猫”上,500M的宽带,一个月1T流量后会降到300M,这是个基本情 ...
    6 n' M3 o) S9 O) G
    ' }& V' F& v* y
    是简单些,但是会危险些
    9 N7 [3 W8 d; n; e# y
    1 _( n0 `+ f2 d, ]. t0 ?* t简单:1 P4 c7 g+ p% D
    直接连光猫上,PC 是需要拨号才能上网吧,查看拨号后的IP,应当是 Internet 公网IP,直接用手机访问这个 公网 IP 加 5000,即可。不需要网络端口映射
    ' l( Z% _+ i2 }( `: R+ c" W* M  X; c0 J2 b
    危险:. A( N- s# n4 `& x6 z
    PC 直连到 Internet 上,没有经过防火墙隔离(Windows自带的不算)容易招到网络攻击,windows 补丁不能及时更新,容易被人攻入
  • TA的每日心情

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

    [LV.7]常住居民III

     楼主| 发表于 2019-3-24 11:18:08 | 显示全部楼层
    流星冲击 发表于 2019-3-24 05:48
    - Q+ t5 p9 m. t7 p/ {1 L" l5 ~mdx源码的txt都是有规律的,利用正则可以提取词头生成索引,txt文件太大,可以用dictzip压缩成dz(gzip文 ...

    $ V8 [8 W$ t; r5 h; V是可以生成索引,直接显示,但 TXT 格式变化有限,不支持字体,颜色,排版等复杂需求,直接显示到用户终端很丑陋,需要根据 TXT 指令转换为复杂的 HTML 格式才能解决。
    6 }0 T5 z: z, l5 L- M5 c, s, X" @# y$ G/ f6 p- L/ z! K
    这个转换可以动态转换,即显示一个词条时,先将 TXT 转换为 HTML,再显示, p* s- U4 z' K. @
    静态转换,先全部转换 TXT 格式到 HTML,显示时直接传递; r7 O5 x0 }  r/ \& d( [! |1 |! k
    ; S, A& C' t  k7 {
    显然第二种方法更有效率,用户体验更好。  g' C: Y9 s# l2 {
  • TA的每日心情
    开心
    前天 12:30
  • 签到天数: 725 天

    [LV.9]以坛为家II

    发表于 2019-3-24 13:16:05 | 显示全部楼层
    zzzz_sleep 发表于 2019-3-24 11:09
    5 w4 \# A% b, H) `3 X" U$ y0 F! O% {8 U是简单些,但是会危险些
    $ L$ u2 \% Y) `  R  Z! S" |  M& b' J. I1 S0 l3 n( M7 Z
    简单:

    4 m( l% e( x  Y. u- W# l& m) W. o: O我看了下一共有5个地址
    3 F* C0 ^1 r9 a% M4 C1.物理(mac)地址* [; A# |8 r0 r: b9 ^
    2.ipv4地址
    * B$ \/ f- p# U, Q3.ipv6地址4 o! i5 M7 e" ?# G
    4.默认网关" k7 V  n. T3 O! e9 g% v
    5.dns服务器
    / W" ?: l1 Z- N& }* {8 N# F% Y我再手机上应该在哪个地址后加5000?
  • TA的每日心情

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

    [LV.7]常住居民III

     楼主| 发表于 2019-3-25 05:57:49 | 显示全部楼层
    Budha 发表于 2019-3-24 13:16
    8 ~& Z* q. ?# w+ k# e) h我看了下一共有5个地址; F9 k+ d, U2 ~7 T- F- ?1 e
    1.物理(mac)地址7 \, d. g1 `% H) `5 ]3 b0 V
    2.ipv4地址

    2 y2 [+ P, I& d# B$ w1 K6 ?2.ipv4地址: ]; Y6 B6 @1 T& o; K( c) z
    1 M  s1 u7 M7 l6 [
    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 17:51 , Processed in 1.506591 second(s), 11 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

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