掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 699|回复: 6

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

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

    [LV.8]以坛为家I

    发表于 2018-5-14 15:35:24 | 显示全部楼层 |阅读模式
    本帖最后由 gttwork 于 2018-5-14 15:37 编辑 ; ?9 _6 n  A3 t" q/ }4 L- s0 V; e. B
    " D' l. Z) ^6 J6 J: a- K! O+ y' i- v
    受到henices大神的帖子https://www.pdawiki.com/forum/thread-21878-1-1.html启发,受益匪浅。. H3 ^5 v1 ~! o9 s2 _
    自制的必应在线词典,目前只能查单个的单词,查2个以上的词组会报错,代码如下:# F/ s1 P- X' Q5 k; ]
    import urllib35 o: {: N4 X* ~5 G- G
    import io
    - ?( b9 Q9 \9 B- K  Y3 Uimport sys' n( x6 z, e( D) C9 J
    sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')1 _3 {9 b2 |. B8 u* S9 D) [! |
    3 q! ]3 j& `* b0 B' }! a
    http = urllib3.PoolManager()1 n( d( Q4 _$ l+ S# T* z' t& i
    r = http.request('GET', 'http://cn.bing.com/dict/search?q=' + sys.argv[1] )
    " H( {) O, G* k* j6 p6 Adata = r.data.decode('utf-8'), {1 G0 B2 j, M) ~
    css = """<style type="text/css">
    . I# \- f& |3 O+ w# {
    + H. Y: x  o+ {- _% B) K! Q. a }
    / B& A, ]" r# Q. G
    6 Y" k, {- v9 }1 h( v
    + A. c* o5 ?5 `. q5 C4 O" O: `</style>"""
    / V' b$ G! i3 k% t! B( c8 E1 Y
    . e+ [, h; Z4 vprint('<head>\n%s\n</head>\n%s' % (css, data))
      }" A* R; ]- W$ q1 d' Q8 K% J( i* E) L
    感谢大神能够指点一二。5 i6 p+ F' ^  J4 x; A. h: ^5 j4 S

    / [8 s: N3 }! P+ A& s4 C. x8 g( ^

    评分

    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-7-23 13:21
  • 签到天数: 353 天

    [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 编辑
    ) O/ Z. M+ u0 D2 \' t
    gttwork 发表于 2018-5-14 20:59' `$ I3 i5 m, w" h3 i; P
    感谢回复,试了一下,还是不行。
    9 B& S: |$ y- j3 Y1 f+ L
    ! e9 A  u/ E( s/ Z8 @$ \- B7 e
    1. s = sys.argv[1:], {' G; V$ S2 ^9 L2 r/ q# I
    2. k = (" ".join(s))
      # B- X" H" N3 l8 s1 A  S
    3. j = k.split(" ")( ^! y2 e8 O/ w2 G5 p  s
    4. theword = ("+".join(j))5 d, |% H2 `/ k; ]# ]
    5. r = http.request('GET', 'http://cn.bing.com/dict/search?q=' + theword)
    复制代码
    1 R) X9 y1 b8 f& t
    ' z, b3 a3 e2 X
    这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。7 m' v1 y* m: C* e- v5 l
    1 A- z1 X2 ?6 o; {- Y2 z
    说实话我也是一点不懂py,但是这个问题其实不难。
    , L- U2 h8 O6 f6 I3 x( i. D4 N+ L2 W$ t' S: {/ V+ ]
  • TA的每日心情
    慵懒
    2018-8-25 12:29
  • 签到天数: 91 天

    [LV.6]常住居民II

    发表于 2018-5-15 11:13:09 | 显示全部楼层
      d; r3 }+ p/ |# K) q2 W
    1. import urllib3
      " k; T8 Q' x; y9 C" p0 H/ I! l
    2. from urllib.parse import quote
      + C; o7 s' L& L8 g( j0 Z( J. E
    3. import io
      * ^$ s/ d. n, s0 H
    4. import sys
      0 [: `4 r& q' v1 f$ D/ d. d% K
    5. sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')  c, N( E$ z- V/ r+ H2 @
    6. 9 f6 Y$ D* f$ P$ \6 |' S8 w- }
    7. http = urllib3.PoolManager()$ r9 j, U3 T& Z9 M4 I9 b
    8. x = quote(sys.argv[1])
      ! H" v$ U! w$ A& {
    9. y = "http://cn.bing.com/dict/search?q="
      , j  N+ B, z8 u  c9 f! O$ }. |
    10. r = http.request('GET', y+x): i/ l& Y7 V' b, a1 m6 K3 ~
    11. data = r.data.decode('utf-8')
      4 r: z5 q% d- `4 e
    12. css = """<style type="text/css">% J5 Y% @0 [& ^- c! J# n, h
    13. </style>"""/ R, `1 ^" D7 A- A2 R/ T
    14. print('<head>\n%s\n</head>\n%s' % (css, data)): M, f4 }; h. K
    复制代码
    ( X0 J) G. G; w8 _5 h; I4 I
    7 A( y6 c* F1 j/ x; f
    效果9 l* \! B) u# C3 e8 U+ ?
    $ D& [6 P1 J  C* v- a

    2 I0 A6 o: K6 u

    本帖子中包含更多资源

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

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

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:37:05 | 显示全部楼层
    须佐之男 发表于 2018-5-14 23:17
    ! W5 A. Z: g- x# @: ~0 c% Y% O8 h3 s这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。5 _, P1 H" T8 u$ J

    1 c+ s9 s8 ~. i; l2 |+ P* M说实话我也是一点不懂py,但是这个问 ...

    ) _( C& R/ ?0 z1 v: f8 {: C2 {非常感谢版主帮助!这个方法成功了。
  • TA的每日心情
    擦汗
    2020-7-23 13:21
  • 签到天数: 353 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:38:45 | 显示全部楼层
    garypang 发表于 2018-5-15 11:130 f8 F& t# z* [" b8 Z: l
    效果
    1 a& U$ \1 \1 ^
    非常感谢您的详细解答,我试了一下,这个方法也非常好。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    小黑屋|手机版|Archiver|PDAWIKI ( 美ICP 0000000字 )|网站地图

    GMT+8, 2022-1-23 20:14 , Processed in 0.033378 second(s), 10 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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