掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 509|回复: 6

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

[复制链接]
  • TA的每日心情
    擦汗
    2020-6-25 09:36
  • 签到天数: 352 天

    [LV.8]以坛为家I

    发表于 2018-5-14 15:35:24 | 显示全部楼层 |阅读模式
    本帖最后由 gttwork 于 2018-5-14 15:37 编辑 7 z( a' x& ^1 k4 ~$ \! O
    # u* B9 d/ O6 ]+ s" D
    受到henices大神的帖子https://www.pdawiki.com/forum/thread-21878-1-1.html启发,受益匪浅。' [5 p" a% w. w5 s
    自制的必应在线词典,目前只能查单个的单词,查2个以上的词组会报错,代码如下:. w7 [9 E! z/ ?* c4 E! }- O
    import urllib3" E7 L+ u8 \; C+ e6 K# u
    import io7 j, n6 z( c1 R# R4 k
    import sys6 V) c3 Q* |0 E
    sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')5 m, x% p7 \- O5 k& Y8 D/ p8 w

    ! u6 i1 l4 F4 J2 Q9 s1 E0 P+ O4 hhttp = urllib3.PoolManager()
    4 T8 o* I( W# U$ Cr = http.request('GET', 'http://cn.bing.com/dict/search?q=' + sys.argv[1] )
    " i0 ?" M- i+ w9 m" Sdata = r.data.decode('utf-8')- t! B) v1 N. n/ D$ J. X% b
    css = """<style type="text/css">
    8 ?) S8 x7 R% O' U, ?
    % @' Z, W" G$ {8 g% B- k& ^5 f }
    ) E; {1 f3 q$ R3 q3 `; q5 k0 ?% k( O: O. _3 ~$ G

    ; v) g6 U0 Y; c" B</style>"""
    7 L) \$ V/ F& D+ N7 B4 g$ Y& g) A0 C
    print('<head>\n%s\n</head>\n%s' % (css, data))
    6 L& W9 B" G. `( a* k# ~7 t
    " O5 g! K) y% ]( s感谢大神能够指点一二。+ k# D+ k2 Q1 N

    6 x+ j) E* e- t) I# U9 H. l
    2 L2 {/ H5 c& ?. e& j+ R: h

    评分

    1

    查看全部评分

  • TA的每日心情
    开心
    2019-1-21 17:00
  • 签到天数: 376 天

    [LV.9]以坛为家II

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

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-14 20:59:33 | 显示全部楼层
    感谢回复,试了一下,还是不行。
  • TA的每日心情
    开心
    2019-1-21 17:00
  • 签到天数: 376 天

    [LV.9]以坛为家II

    发表于 2018-5-14 23:17:05 | 显示全部楼层
    本帖最后由 须佐之男 于 2018-5-14 23:18 编辑 ; m3 ~# d: B" N
    gttwork 发表于 2018-5-14 20:59
    ! l8 s. i; }0 w! h) Q. f) l3 g4 v感谢回复,试了一下,还是不行。

    5 G  ?, R( b. L" e% _1 f
    # g/ E7 S+ y$ c
    1. s = sys.argv[1:]
        I# H7 i! l# R( L+ P" C
    2. k = (" ".join(s))% K, L0 G1 y5 N/ r7 Z# r
    3. j = k.split(" "): p- c; \1 a3 Z, D& G6 [4 G) g
    4. theword = ("+".join(j))6 l% S) N0 [% V, \: p
    5. r = http.request('GET', 'http://cn.bing.com/dict/search?q=' + theword)
    复制代码
    ; f& g/ u4 ~0 x' Y7 z. _) }
    - t; G( Y  j* _
    这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。- ^# ?4 r. \* M5 X' s
      M- b" V& z% R9 b# O2 P1 U
    说实话我也是一点不懂py,但是这个问题其实不难。) D% p; V2 {1 a5 u1 _- j
    6 n# k6 f! O2 H) r6 M: F. k
  • TA的每日心情
    慵懒
    2018-8-25 12:29
  • 签到天数: 91 天

    [LV.6]常住居民II

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

    + ~" {  d+ U2 ~4 h4 }1 a! f: Y
    1. import urllib3
      & P( X: c! H8 f! U
    2. from urllib.parse import quote, ^3 [% z+ c* I  U, T- |" H
    3. import io8 E0 h, F0 c" ~. O2 P
    4. import sys
      & N2 k2 z& c( l: K" c0 d3 j
    5. sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')
      0 G+ w# p! [  \% L2 R/ A

    6. 9 ^, e3 d. l, z+ Z8 I* F6 {3 K* |
    7. http = urllib3.PoolManager(); \: Q& l* G& o  e1 n9 \! _
    8. x = quote(sys.argv[1])
      - ?) \3 @) }) O( u
    9. y = "http://cn.bing.com/dict/search?q="; R' t: d- I! c$ b5 _$ Y$ B) f# W
    10. r = http.request('GET', y+x)
      : o! _0 I2 X/ @2 A! I% n
    11. data = r.data.decode('utf-8'), C. n8 U) {% e' }0 @2 ]( i
    12. css = """<style type="text/css">
      + @' p+ T: k* Z
    13. </style>"""$ R6 d$ i9 Y( J" M; d" N- F
    14. print('<head>\n%s\n</head>\n%s' % (css, data))
      0 s1 S: Z1 q4 C/ `
    复制代码
    2 E% i& N4 V# C) e5 B

    " J3 _0 I0 P8 U3 J! Z- p效果
    + f4 f/ K! _) R6 ]2 `9 B
    8 E% s  |3 x% v. |* p) k( k% b8 L0 r9 o0 V# S. C; v

    本帖子中包含更多资源

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

    x
  • TA的每日心情
    擦汗
    2020-6-25 09:36
  • 签到天数: 352 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:37:05 | 显示全部楼层
    须佐之男 发表于 2018-5-14 23:17
    9 k0 B$ V3 R5 f7 j5 g: z这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。* p. G8 k4 {$ _, E6 [" t
    + n& J4 e- t$ r
    说实话我也是一点不懂py,但是这个问 ...

    5 J' {  Q( K7 ?+ L! t: z5 F: o( D" V4 V非常感谢版主帮助!这个方法成功了。
  • TA的每日心情
    擦汗
    2020-6-25 09:36
  • 签到天数: 352 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:38:45 | 显示全部楼层
    garypang 发表于 2018-5-15 11:132 j3 Q6 w) b+ K7 D$ O' o4 H
    效果
    . q/ `% z4 C0 p
    非常感谢您的详细解答,我试了一下,这个方法也非常好。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

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

    GMT+8, 2020-7-10 07:48 , Processed in 0.037006 second(s), 11 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

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