掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1169|回复: 23

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

[复制链接]
  • TA的每日心情
    慵懒
    2020-2-11 19:51
  • 签到天数: 144 天

    [LV.7]常住居民III

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

    本帖被以下淘专辑推荐:

    该用户从未签到

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

    [LV.4]偶尔看看III

    发表于 2019-3-22 16:57:31 | 显示全部楼层
    我按楼主说的flask run运行提示:没有模块 ‘mdict’ pip安装后运行提示
    4 h, I' c6 z% }7 b! ?$ MAttributeError: module ‘mdict’ has no attribute 'init_app'
    ( v0 v0 S$ r. z% ~不能正常访问网页
  • TA的每日心情

    昨天 20:23
  • 签到天数: 335 天

    [LV.8]以坛为家I

    发表于 2019-3-22 20:37:17 | 显示全部楼层
    真的不太懂,本人技术不行,可否简化了发布
  • TA的每日心情
    慵懒
    2020-2-11 19:51
  • 签到天数: 144 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-22 21:00:46 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-22 21:27 编辑 5 E- m% |/ d( h7 l4 Q' {
    dengao 发表于 2019-3-22 16:57
    8 Z' Y: m" P& l7 E我按楼主说的flask run运行提示:没有模块 ‘mdict’ pip安装后运行提示
    0 ^+ U, I' Z8 K# o% W& S4 UAttributeError: module ‘mdict ...
    9 x* p! Z5 s; T8 b, Z8 B
    运行:flask run: _  |$ j5 [  Q# Z. ?
    试试
  • TA的每日心情
    慵懒
    2020-2-11 19:51
  • 签到天数: 144 天

    [LV.7]常住居民III

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

    ; S! A7 R' @2 b, J6 V+ U7 I这个版本有点问题,我已经更新,请重新下载,链接不变' @9 h" C: N  V6 O
    , I7 S" ?' t  E$ C1 i: e
    4 U1 n0 q; Y0 r- N3 R$ e+ H% J& s

    0 [$ }/ f, o8 j
  • TA的每日心情
    开心
    7 小时前
  • 签到天数: 639 天

    [LV.9]以坛为家II

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

    [LV.9]以坛为家II

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

    [LV.7]常住居民III

     楼主| 发表于 2019-3-23 13:22:54 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-23 13:24 编辑
    8 Y7 r/ o" I+ P5 t0 y1 a
    Budha 发表于 2019-3-23 09:45+ \2 q, d8 `' b2 [
    楼主,我刚才没说清楚,我说的是用手机打开http://127.0.0.1:5000,出现了127.0.0.1拒绝连接的提升,可能还 ...
    / `! G" F' T. A/ ^$ j7 t
    http://127.0.0.1:5000 只能用本机访问( m7 t1 F4 d3 R% ^5 e3 b
    4 w  j3 x- }6 B  r& S, G
    如果用手机访问,需要改写下 mdict_start.cmd 文件,然后访问你电脑的 http://<your_pc_ip>:5000/
    8 G, O2 N; T1 R改为3 o3 k" |' e6 B' E7 [
    1. python\scripts\flask.exe run --host 0.0.0.0
    复制代码

    . R* e. z6 C! N4 ]2 ?$ F6 W1 @$ Z
  • TA的每日心情
    开心
    7 小时前
  • 签到天数: 639 天

    [LV.9]以坛为家II

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

    [LV.7]常住居民III

     楼主| 发表于 2019-3-23 15:35:51 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-23 15:39 编辑 2 |, [& ~3 j0 e1 o3 h
    Budha 发表于 2019-3-23 14:44
    . t$ ]( C! I( ~: C: ?我运行绿色版的失败了,我就用第一种方法在本机上访问成功,但在手机上失败,按照第一种方法的话要改啥文件 ...

    + J1 i: w( N- x. ]  G5 }2 X7 a- P3 J如果你自己安装的 python/flask 运行环境,那么直接运行 flask.exe run --host 0.0.0.07 [! Y( }9 ]1 U2 c
    3 t+ c5 r- {6 m
    如果用我提供的运行环境 python\scripts\flask.exe run --host 0.0.0.0, 前面就多个路径
      Q& Z) l; o* E) R: |2 P; g8 `
    查看您 PC的IP地址,用手机或其他在同一网络的电脑访问 http://<pc_ip>:5000/
    ) e  V, d" `% S! j6 N/ ~请重新下载 mdict 源码文件,刚修复一个界面问题。
    ) @9 {3 O6 n, }! W4 T
  • TA的每日心情
    慵懒
    2020-1-25 14:31
  • 签到天数: 26 天

    [LV.4]偶尔看看III

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

    [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 编辑 7 c5 E  \  Q/ O
    Budha 发表于 2019-3-23 17:24+ B4 m- q8 G0 m
    我的意思是我电脑一直开着,我人在外面上班或在外地出差,我远程访问家里的电脑,调用词典,楼主的程序可以 ...
    " @3 I. g9 @6 g7 T
    这个和程序没关系,关键在于你能不能远程访问家里的电脑
    : {7 P2 J! _1 L1 s. Y1 a2 q  s% A; }
    8 T! w* F; P+ I5 _3 \" S9 [7 _1 E" {& O! q: H7 F8 _( o  o
    在Ubuntu上简单试用了一下,很不错。' W- ]  M) D4 p6 d! R9 B
  • TA的每日心情
    慵懒
    2020-2-11 19:51
  • 签到天数: 144 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-23 20:52:57 | 显示全部楼层
    本帖最后由 zzzz_sleep 于 2019-3-23 20:55 编辑
    " ~4 d# ?) n6 q* B
    Budha 发表于 2019-3-23 17:24
    ) o; Z1 r* l, `/ H. V我的意思是我电脑一直开着,我人在外面上班或在外地出差,我远程访问家里的电脑,调用词典,楼主的程序可以 ...
    2 \9 M8 b- I! w) d3 R: i
    可以办到,但主要功能不是我提供的
    ) y* Y& m) {; F4 ]5 U
    ' k. }1 B6 T0 @1 G) _! p- R& O1. 首先,运行我的程序,家里内网的机器可以正常访问
    7 l* Q8 i0 x3 x0 @  l2. 在家里 AP 路由上做地址转换8 ?0 b1 K, R# V8 j- o
        例如,映射外部端口 5000,到家里内网  <pc_ip>:50002 n3 a6 x* P) L7 o/ ]

    ; e# L8 i- A5 q# K- K4 f$ ~* F注意:
    9 Q- A: V6 v) Q+ X* \+ R   1. 家里 PC IP 要求是静态 IP,动态 IP (DHCP) 不可以
    / F& P. w8 g, V3 q8 |   2. 你要知道当前确切的外网地址,即 家里 AP 路由在 Internet 上的 IP 地址。这个地址可能每天都会变化,可以通过 DDNS 解决7 @9 O! V' L8 v6 D' c+ B5 G6 D
       3. 映射的外网端口不能是 80,或 443 ,ISP 禁止
    ! p$ v- A. b0 |/ `, M+ @: T- o# X3 _! S
    总之,主要是网络的问题,不是我程序的问题。太多 IT 术语,属于专业问题,没法细说。
    - Q' m8 b5 C; h4 k: O, t( H- y6 d: |0 ?' ~
  • TA的每日心情
    开心
    2019-3-26 21:36
  • 签到天数: 178 天

    [LV.7]常住居民III

    发表于 2019-3-23 23:32:47 | 显示全部楼层
    本帖最后由 流星冲击 于 2019-3-23 23:36 编辑 ( p. x/ ?0 E9 V; J6 O# J

    * {3 \& C% {$ C" }% z词典code一定要规范,是不是做到xhtml标准的那种程度?% x  a& r' ^8 Z* L; u2 y, \
    还有就是,可不可以做成直接支持mdx的txt源码?并且进一步优化源码的支持,例如词头有good|well|best三个同义词,用“|”符号进行分隔,用以替代[email protected]@@的功能,查这三个词都是指向good这个词头,这个功能在babylon、stardict、lingoes都是有的,这个功能对于制作小语种的同义词非常好用。
  • TA的每日心情
    慵懒
    2020-2-11 19:51
  • 签到天数: 144 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-24 05:29:36 | 显示全部楼层
    流星冲击 发表于 2019-3-23 23:32- K5 m+ l  J7 ]% H6 Y) r
    词典code一定要规范,是不是做到xhtml标准的那种程度?, c' h  ], J; P6 q  _
    还有就是,可不可以做成直接支持mdx的txt源码?并且进 ...

    ( n4 d5 W$ g5 w+ V" l. k7 K词典code一定要规范,是不是做到xhtml标准的那种程度?
    # x  _7 C$ [# l6 P' ~- W6 r2 A# y, |确切的说,是的。因为词典code是 HTML 代码,各大软件都按 XHTML 标准支持,现在是 HTML5,其次再做一些冗余性调整,越规范,兼容性越好。2 v# j) d. I9 G1 {' Q) N

    ! I% X! I6 U8 C: e( N) ~- Atxt源码没做过,不清楚,但理论上可以,但可能会牺牲通用性。HTML 软件原生支持,TXT 格式千变万化,没有统一标准,支持性就差了
  • TA的每日心情
    开心
    2019-3-26 21:36
  • 签到天数: 178 天

    [LV.7]常住居民III

    发表于 2019-3-24 05:48:07 | 显示全部楼层
    zzzz_sleep 发表于 2019-3-24 05:296 K2 F$ g* k& u. z7 S) R  Q' n
    词典code一定要规范,是不是做到xhtml标准的那种程度?* R/ H% K" i; }1 X  @6 H
    确切的说,是的。因为词典code是 HTML 代码,各大 ...
    1 E& g  M: g3 M: l/ s- x, \
    mdx源码的txt都是有规律的,利用正则可以提取词头生成索引,txt文件太大,可以用dictzip压缩成dz(gzip文件)然后读取内容。
  • TA的每日心情
    开心
    7 小时前
  • 签到天数: 639 天

    [LV.9]以坛为家II

    发表于 2019-3-24 07:37:11 | 显示全部楼层
    zzzz_sleep 发表于 2019-3-23 20:52
    4 [  E; A+ g1 k: h4 G可以办到,但主要功能不是我提供的
    3 b! i7 d3 |, b8 }0 Z7 D9 w% |: v
    / x; f9 P6 d) @" G( o2 x1. 首先,运行我的程序,家里内网的机器可以正常访问

    & _% x, R) O- J& R$ a谢谢楼主解答,我家里的电脑是直接连在“光猫”上,500M的宽带,一个月1T流量后会降到300M,这是个基本情况,这样设置的话是不是要简单点?
  • TA的每日心情
    慵懒
    2020-2-11 19:51
  • 签到天数: 144 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-24 11:09:59 | 显示全部楼层
    Budha 发表于 2019-3-24 07:37# X8 ?' c1 V6 y5 K9 B
    谢谢楼主解答,我家里的电脑是直接连在“光猫”上,500M的宽带,一个月1T流量后会降到300M,这是个基本情 ...

    2 u+ @2 f0 M/ ]9 g$ B- I* o! q
    ( D8 p$ u  U. d. a, i) b& L是简单些,但是会危险些/ j* j1 k& E$ C" T# F* ?% u
    2 q0 w& x' {1 z( R  z3 ]
    简单:: @2 W% I1 s+ i  _: v( y$ N
    直接连光猫上,PC 是需要拨号才能上网吧,查看拨号后的IP,应当是 Internet 公网IP,直接用手机访问这个 公网 IP 加 5000,即可。不需要网络端口映射
    ' |1 x: T( ^: [# W0 W- H6 s# ~/ ]( M! V* I$ o% j# U! c
    危险:; P% c/ x3 w% t  [- o5 L8 I
    PC 直连到 Internet 上,没有经过防火墙隔离(Windows自带的不算)容易招到网络攻击,windows 补丁不能及时更新,容易被人攻入
  • TA的每日心情
    慵懒
    2020-2-11 19:51
  • 签到天数: 144 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-24 11:18:08 | 显示全部楼层
    流星冲击 发表于 2019-3-24 05:48' o% z/ h; i' p, p' d% a; E' s4 t$ k
    mdx源码的txt都是有规律的,利用正则可以提取词头生成索引,txt文件太大,可以用dictzip压缩成dz(gzip文 ...

    0 ~' d  x+ a/ S. I是可以生成索引,直接显示,但 TXT 格式变化有限,不支持字体,颜色,排版等复杂需求,直接显示到用户终端很丑陋,需要根据 TXT 指令转换为复杂的 HTML 格式才能解决。
    # Q* [4 }8 g5 z* S
    . K. k/ i1 c6 P% n这个转换可以动态转换,即显示一个词条时,先将 TXT 转换为 HTML,再显示3 M! I6 X9 b4 p, b6 h" J8 _) [, R: O8 b
    静态转换,先全部转换 TXT 格式到 HTML,显示时直接传递
    * m8 k+ y3 q; ~# m( }2 t/ n9 |
    ) e, d$ D2 ^# h  c5 v显然第二种方法更有效率,用户体验更好。8 C1 |& ~$ \  |
  • TA的每日心情
    开心
    7 小时前
  • 签到天数: 639 天

    [LV.9]以坛为家II

    发表于 2019-3-24 13:16:05 | 显示全部楼层
    zzzz_sleep 发表于 2019-3-24 11:09
    ' ?9 z3 ?' N$ ~) D6 u1 M是简单些,但是会危险些
    " Y) Z# Q- N5 f3 K" o* n5 W+ Q" L& @
    简单:
    + [: {4 j9 t9 T1 y$ C8 ]
    我看了下一共有5个地址
    1 @; w( ?6 X, l9 V/ B+ J& M1 y8 u4 B; X1.物理(mac)地址
    * [+ P3 }* r% [: L! M+ t6 E9 o2.ipv4地址
    , \( V9 m9 C6 \  Y! R3.ipv6地址& _. g# D; t2 l( K) q
    4.默认网关/ [8 P) v5 Q& E3 _' R
    5.dns服务器4 H4 l, Z1 y2 G( Y3 w# g; p3 f
    我再手机上应该在哪个地址后加5000?
  • TA的每日心情
    慵懒
    2020-2-11 19:51
  • 签到天数: 144 天

    [LV.7]常住居民III

     楼主| 发表于 2019-3-25 05:57:49 | 显示全部楼层
    Budha 发表于 2019-3-24 13:16
    3 ^! ^" _/ l4 L8 h) @# Z5 G5 E我看了下一共有5个地址% o) G6 S. X' N7 E* d! |6 r
    1.物理(mac)地址
    : E# b6 h7 R& n2 S: G& u" Y2.ipv4地址
    9 K& j) f0 r* V' t5 L" E
    2.ipv4地址
    : Y) A' {' f+ K4 \+ L$ O
    9 z; S. D1 H  V% ~' Tipv4:5000
  • TA的每日心情
    开心
    2020-2-10 11:47
  • 签到天数: 57 天

    [LV.5]常住居民I

    发表于 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-2-22 15:51 , Processed in 0.163809 second(s), 15 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

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