掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 756|回复: 6

[使用求助] 【求助】GoldenDict自制在线词典(半成品)

[复制链接]
  • TA的每日心情
    擦汗
    2020-7-23 13:21
  • 签到天数: 353 天

    [LV.8]以坛为家I

    发表于 2018-5-14 15:35:24 | 显示全部楼层 |阅读模式
    本帖最后由 gttwork 于 2018-5-14 15:37 编辑
    + M7 W! z) K; t8 T+ L' N7 R5 ~- q4 i- |0 r
    受到henices大神的帖子https://www.pdawiki.com/forum/thread-21878-1-1.html启发,受益匪浅。
    ) W  w- W2 m8 V( i2 a7 [7 a自制的必应在线词典,目前只能查单个的单词,查2个以上的词组会报错,代码如下:" A) x$ I( y% T, X, A! u: y" t
    import urllib3& n/ j4 y& ?* p, _1 ~+ u. d
    import io; `1 b/ @: h8 ?; {' p) G
    import sys" j; M# a  g+ q
    sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')* j/ r6 F0 @" V9 E! e
    5 s, q  J& r7 ^
    http = urllib3.PoolManager()
    + D  m4 s+ o1 Lr = http.request('GET', 'http://cn.bing.com/dict/search?q=' + sys.argv[1] )
    8 k0 {+ v4 p) f0 rdata = r.data.decode('utf-8')
    % M( P% D" q6 p) J0 m2 t( L) m( Ecss = """<style type="text/css">2 A% ?! d0 y, @1 h" N$ v

    - n6 u# Z% m1 k$ s  T; C }
    4 q( B2 Z  @: k. J: a$ T' I/ t( O7 `" b8 P1 [

    . r0 v6 l( L9 u</style>"""
    & ?8 B9 T, ]9 m; T/ _# U$ }7 o1 q& |4 w: W. e6 m
    print('<head>\n%s\n</head>\n%s' % (css, data))/ x$ Q" B( c" j% X6 W7 d
    + `! N, m- k. |% u  C) p
    感谢大神能够指点一二。9 h2 C# W' ]& |+ A5 [# ~
    9 ^3 ?( z; O6 r& U

    + y3 H8 o  o4 p9 R& @

    评分

    1

    查看全部评分

  • TA的每日心情
    奋斗
    2022-6-1 19:02
  • 签到天数: 377 天

    [LV.9]以坛为家II

    发表于 2018-5-14 16:38:08 来自手机 | 显示全部楼层
    不懂py,但可能和sys.argv[1] 这句有关,改成sys.argv[1:] 试试
  • TA的每日心情
    擦汗
    2020-7-23 13:21
  • 签到天数: 353 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-14 20:59:33 | 显示全部楼层
    感谢回复,试了一下,还是不行。
  • TA的每日心情
    奋斗
    2022-6-1 19:02
  • 签到天数: 377 天

    [LV.9]以坛为家II

    发表于 2018-5-14 23:17:05 | 显示全部楼层
    本帖最后由 须佐之男 于 2018-5-14 23:18 编辑
    , }# Q7 p9 S) x7 I7 r
    gttwork 发表于 2018-5-14 20:59& P/ a# M% G& Z/ @* _* r
    感谢回复,试了一下,还是不行。
      M1 ?0 e% v' q$ i

    6 Q6 ^4 x1 B& y4 f: [9 O
    1. s = sys.argv[1:]  i) j- x$ x  o1 \- b" y0 d
    2. k = (" ".join(s))
      9 q( t: e0 L* Q
    3. j = k.split(" "). Y% v1 c" f. z4 F. m2 c
    4. theword = ("+".join(j)): A: \0 V/ M* q
    5. r = http.request('GET', 'http://cn.bing.com/dict/search?q=' + theword)
    复制代码
    0 w+ k0 d9 e: A% [. [& y# H, h

    6 v$ T" s, @# @' I) s4 x- @5 T这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。6 G8 |5 j3 B4 i. X* ?5 \
    8 |6 G0 O5 Z0 E1 `
    说实话我也是一点不懂py,但是这个问题其实不难。
    & Y1 d; `7 V4 S+ M& V. G1 T1 n+ z# c! U1 C/ ?4 U; L# t
  • TA的每日心情
    慵懒
    2018-8-25 12:29
  • 签到天数: 91 天

    [LV.6]常住居民II

    发表于 2018-5-15 11:13:09 | 显示全部楼层

    - A2 z+ A3 n) u. V; ^8 q
    1. import urllib37 n! S5 ?8 D' n3 B+ Q+ X
    2. from urllib.parse import quote1 k/ ~! P3 d( A5 R6 b8 O
    3. import io
      9 @0 @$ }1 }2 c% ^  M( l3 K1 M+ c
    4. import sys+ Y# `' K- N$ T8 r2 I. I9 Y, M
    5. sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')
      ! H# j2 D% u) k% |% U

    6. " X5 A" b3 Y. M9 N8 @/ C* |
    7. http = urllib3.PoolManager()& p" S/ G0 ?) Q: x
    8. x = quote(sys.argv[1])
      5 ~" u! Y' G3 [9 o
    9. y = "http://cn.bing.com/dict/search?q="
      " w" n* ?4 ?( T5 v% |5 O% v
    10. r = http.request('GET', y+x); [+ u# q' F9 Q! _
    11. data = r.data.decode('utf-8')
      # o( Y: K0 R2 @
    12. css = """<style type="text/css">
      7 Y6 h  H; T' B
    13. </style>"""
      ( f7 [4 D1 k. X: b
    14. print('<head>\n%s\n</head>\n%s' % (css, data))
        n+ E. M% x2 L
    复制代码

    0 [( C. q" \% ^" x. D
    / `5 ?$ c/ h9 h( ]; v效果' k" s6 z/ T) W8 ^

    9 E0 \( n% K3 x0 B5 i  U, r% W- u# L" H8 v+ k( d5 H5 ^$ ?

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?免费注册

    x
  • TA的每日心情
    擦汗
    2020-7-23 13:21
  • 签到天数: 353 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:37:05 | 显示全部楼层
    须佐之男 发表于 2018-5-14 23:17+ K' M1 Y, ], L. c+ O
    这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。; a9 N, ^& f% S$ n" o
    3 X) Q4 v3 g7 h+ f- h5 @
    说实话我也是一点不懂py,但是这个问 ...

    5 z2 N6 D0 ~6 K非常感谢版主帮助!这个方法成功了。
  • TA的每日心情
    擦汗
    2020-7-23 13:21
  • 签到天数: 353 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:38:45 | 显示全部楼层
    garypang 发表于 2018-5-15 11:13( q" g0 N* Y1 u! J! _
    效果
    8 ^7 p( A2 \; h& ~* o
    非常感谢您的详细解答,我试了一下,这个方法也非常好。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2022-8-12 10:49 , Processed in 0.047452 second(s), 13 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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