掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 253|回复: 6

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

[复制链接]
  • TA的每日心情
    奋斗
    昨天 07:16
  • 签到天数: 29 天

    [LV.4]偶尔看看III

    发表于 2018-5-14 15:35:24 | 显示全部楼层 |阅读模式
    本帖最后由 gttwork 于 2018-5-14 15:37 编辑
    2 C3 x  W9 q/ `- w1 P5 \9 F' S: S
    受到henices大神的帖子https://www.pdawiki.com/forum/thread-21878-1-1.html启发,受益匪浅。5 ^- N( ^; N* H, k9 m- K
    自制的必应在线词典,目前只能查单个的单词,查2个以上的词组会报错,代码如下:
      d( b3 l' H4 v! f1 Kimport urllib3
    ' U% S4 T9 F1 Z0 h  p" t. b2 iimport io+ Q$ i9 R% `5 Z
    import sys
    9 f3 l+ \' [% k7 X+ Q+ ysys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8'): u5 r* g3 f' e  J

    / b+ P; ]+ J& xhttp = urllib3.PoolManager()4 [" K, z" H% d' j7 M6 v3 m1 b
    r = http.request('GET', 'http://cn.bing.com/dict/search?q=' + sys.argv[1] )  q8 N1 \& i6 g( u, q
    data = r.data.decode('utf-8')7 z) }0 T8 E$ _6 v
    css = """<style type="text/css">/ |$ ?! p5 E# Q8 w  j; i8 G
    0 F2 P8 }4 x5 I/ O' @1 O
    }
      [# [, f' D( c2 X
    " ^. y% b$ e6 G" p% Q1 H9 u% B8 t1 M  F% ?
    </style>"""+ Y; X) q# G. J5 k# N" {; ~
    ; n4 F8 B/ p0 H
    print('<head>\n%s\n</head>\n%s' % (css, data))9 {* ]+ P; ], d' q6 [& d

    5 O( a; Y& v  g9 J! i* u5 H5 j& }感谢大神能够指点一二。) M5 N: Q, V; t. `* b# T% ~

    3 O8 n' S& W/ P% h7 i1 D# C$ h) v+ i3 V

    评分

    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的每日心情
    奋斗
    昨天 07:16
  • 签到天数: 29 天

    [LV.4]偶尔看看III

     楼主| 发表于 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 编辑 % K  H# H9 c( N3 _) M  E* E1 |! C% K
    gttwork 发表于 2018-5-14 20:59
    8 P+ G" i0 n; G" L/ O" q6 G感谢回复,试了一下,还是不行。

    % f6 {) m: D7 D% S
    3 ?$ k1 n+ ?' v, L/ T2 J/ M3 Q
    1. s = sys.argv[1:]* ^" q7 e/ {( G7 S: J+ B
    2. k = (" ".join(s))
      ' q* D; R' [5 v: n! v; p
    3. j = k.split(" ")
      3 A# M) @, V6 @# K& G" J5 M4 D; T
    4. theword = ("+".join(j))2 Y1 i- y; K/ u! v) H9 w% D
    5. r = http.request('GET', 'http://cn.bing.com/dict/search?q=' + theword)
    复制代码
    : P& I# e0 u8 ]- f& H7 E4 _
    1 q# U7 o8 K% T/ H% o: [
    这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。
    5 s' M7 L/ b: j8 a$ v( H# v/ B7 p- o. i' I. u" I
    说实话我也是一点不懂py,但是这个问题其实不难。
    . k- _2 N: Y2 |( k5 F* ^  f6 C5 T; e9 b" ^4 ]& m/ w
  • TA的每日心情
    慵懒
    2018-8-25 12:29
  • 签到天数: 91 天

    [LV.6]常住居民II

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

    9 a' t9 _" R2 _7 m
    1. import urllib3
      9 l& v" p( F) L
    2. from urllib.parse import quote
      - y" S% w5 K* M! |( y: n
    3. import io$ r  K0 Z* C0 @) o
    4. import sys
      3 J8 a& i- S6 j  n) @" k' y
    5. sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')3 ^% F4 |- }+ Z9 D% p3 O
    6. 5 e$ U  ?; t9 a$ r+ x8 o2 E6 J
    7. http = urllib3.PoolManager()
      6 I3 N. g9 G( d. h7 K
    8. x = quote(sys.argv[1])- @; c$ w8 _, a+ T( B1 d
    9. y = "http://cn.bing.com/dict/search?q="
      : m- p; w4 t9 V3 [
    10. r = http.request('GET', y+x)
      5 a9 U, \# [9 L. C: D
    11. data = r.data.decode('utf-8')2 n" h; n3 G8 Z$ L! Z( y" T
    12. css = """<style type="text/css">
        J  I. i) h4 {  U& P
    13. </style>"""/ g1 |5 g. o7 k
    14. print('<head>\n%s\n</head>\n%s' % (css, data))( `- w* l5 C" g2 g
    复制代码

    : T+ q0 F; {9 |9 E) h/ T8 o  T- R( g, A  k  ^
    效果3 ?( b! {6 C6 G9 G0 [  `

    . d& b8 M" v9 R: p! O
    ( u* ]. ~$ o2 o* x$ \3 u+ [! i5 E

    本帖子中包含更多资源

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

    x
  • TA的每日心情
    奋斗
    昨天 07:16
  • 签到天数: 29 天

    [LV.4]偶尔看看III

     楼主| 发表于 2018-5-15 21:37:05 | 显示全部楼层
    须佐之男 发表于 2018-5-14 23:17
    ) w* v8 e9 Z* g' J# j- D8 M2 D这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。
    / D: W4 c1 Y! t: q0 |
    6 ~% W. Z2 i* e, ~+ q. f. \3 Y说实话我也是一点不懂py,但是这个问 ...

    + ?) E" @3 d* ^1 e非常感谢版主帮助!这个方法成功了。
  • TA的每日心情
    奋斗
    昨天 07:16
  • 签到天数: 29 天

    [LV.4]偶尔看看III

     楼主| 发表于 2018-5-15 21:38:45 | 显示全部楼层
    garypang 发表于 2018-5-15 11:133 G) H6 x, y$ a; A# B0 V% W
    效果
    - y0 J6 b3 N9 g1 h" a& t
    非常感谢您的详细解答,我试了一下,这个方法也非常好。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

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

    GMT+8, 2019-2-23 02:30 , Processed in 0.588912 second(s), 15 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

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