掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1158|回复: 6

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

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

    [LV.8]以坛为家I

    发表于 2018-5-14 15:35:24 | 显示全部楼层 |阅读模式
    本帖最后由 gttwork 于 2018-5-14 15:37 编辑 4 s* _* ]1 }4 S( B9 d
    5 y7 w6 F; Z# |8 j, T+ R. G
    受到henices大神的帖子https://www.pdawiki.com/forum/thread-21878-1-1.html启发,受益匪浅。
      D% D, _/ ~3 x) ~7 b7 G自制的必应在线词典,目前只能查单个的单词,查2个以上的词组会报错,代码如下:
    ( S9 d) o# K7 O" e" V/ bimport urllib3
    . T. f. V; J2 ~' I. @import io
    1 m- P, l/ v% a4 t: V+ q) A/ }import sys
    6 J9 F% {8 f/ D4 W- d4 |  g# ssys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')
    ' {& I' D! S( Z# a. K+ F) Z7 X2 x, f! i) Q2 ]( y4 c; k0 F0 I
    http = urllib3.PoolManager()
    / Y; b4 T' @) Gr = http.request('GET', 'http://cn.bing.com/dict/search?q=' + sys.argv[1] ); j* @+ ^/ i. T( Q- K
    data = r.data.decode('utf-8')3 p% k. H, e& ]5 e; D. }6 x
    css = """<style type="text/css">0 E" ?, Y+ ]! h( Z
    $ p7 ^* `# v" z6 W9 J  W, f" g
    }2 t$ p! F9 O- j; o5 q

    2 R' s. x* a4 E1 s7 b: o& r* g2 K4 r! l
    </style>"""
    + Z! H& t  U& n* S
    9 |5 X/ H: k: s& ~# l- S" Cprint('<head>\n%s\n</head>\n%s' % (css, data))+ ~+ l3 Q4 j1 W9 z; [

    4 q% d; f. G& L" g9 p/ x感谢大神能够指点一二。& f5 l3 u! e- Y1 o

    4 G( U- n$ l' M3 k/ L  z  E. D
    2 C6 f7 ?5 g; R4 M0 w+ e

    评分

    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 编辑
    * \; d9 ^: _1 C  ]. `- j- r% P
    gttwork 发表于 2018-5-14 20:594 M# H' ?( B/ }/ I5 V7 ~
    感谢回复,试了一下,还是不行。
    5 {! p8 S2 e2 i$ H

    9 D- x# ~: f4 Y
    1. s = sys.argv[1:]
      ! {9 Q- @9 D7 \, G! `
    2. k = (" ".join(s))
      1 D2 p7 u+ J. s9 r  f- Q
    3. j = k.split(" ")
      + @; I2 i, A2 Q& |2 D+ G
    4. theword = ("+".join(j))* `" u8 o+ B& f+ k% G  j! I
    5. r = http.request('GET', 'http://cn.bing.com/dict/search?q=' + theword)
    复制代码
    : h* I$ B7 R- V! h9 a& M
    * D: `9 G/ [0 h* T
    这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。
    2 m- Z& ?2 d) w- w6 [. R7 Y0 Q, o% G; p8 w" w- j9 B
    说实话我也是一点不懂py,但是这个问题其实不难。
    1 n6 d/ }: Z# m: V1 X7 V* T8 H+ ^- e. R+ G: d
  • TA的每日心情
    慵懒
    2018-8-25 12:29
  • 签到天数: 91 天

    [LV.6]常住居民II

    发表于 2018-5-15 11:13:09 | 显示全部楼层
    4 [3 S) Q2 k9 j
    1. import urllib3
      4 B) Y' Q; K9 f# c" S
    2. from urllib.parse import quote8 t0 \# [  @6 Y/ D
    3. import io
      . \0 N4 J- g  @
    4. import sys
      9 T( ?" Q. K$ y4 X
    5. sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')
      % ?: T/ s7 w5 P7 h- ]6 y

    6. ) L- R6 N: F& P/ S' ]7 k
    7. http = urllib3.PoolManager()$ x& Z" N1 Z- u
    8. x = quote(sys.argv[1])
      9 P% X7 f) O! t. _& ~
    9. y = "http://cn.bing.com/dict/search?q="
      . {6 u% {1 j- H$ L1 ^7 \# s7 H/ A
    10. r = http.request('GET', y+x)
      ' B: D0 s/ {6 k8 M% V; D
    11. data = r.data.decode('utf-8')7 X* v' @# h; |' [5 f
    12. css = """<style type="text/css">
        N8 {8 o2 l# p
    13. </style>"""$ y' T$ @: o- h  b2 x. D% c4 E1 N, H
    14. print('<head>\n%s\n</head>\n%s' % (css, data))
      + h( t8 x  }' Y; r
    复制代码
    ) U% g; }$ w/ S: L3 \" [
    ! \7 x* G3 N7 X4 o# p* P
    效果+ L; L0 D% p$ z' J4 w
    ) e7 X& b3 A" ]  M) C
    ) B* n: T% m: A$ Q# _, V

    本帖子中包含更多资源

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

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

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:37:05 | 显示全部楼层
    须佐之男 发表于 2018-5-14 23:17
    ! g& @6 Q; s# R这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。5 v) Q5 u2 w9 f
    5 o- c* E5 _9 }& m2 W9 @0 ?
    说实话我也是一点不懂py,但是这个问 ...
    - O: d& [% j" B! N( Y) M7 _
    非常感谢版主帮助!这个方法成功了。
  • TA的每日心情
    擦汗
    2020-7-23 13:21
  • 签到天数: 353 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:38:45 | 显示全部楼层
    garypang 发表于 2018-5-15 11:132 R. ?& r$ e' ?+ W, [
    效果
    " G7 Y7 ~2 O( t! y
    非常感谢您的详细解答,我试了一下,这个方法也非常好。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-4-26 09:30 , Processed in 0.060562 second(s), 12 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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