掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1145|回复: 6

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

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

    [LV.8]以坛为家I

    发表于 2018-5-14 15:35:24 | 显示全部楼层 |阅读模式
    本帖最后由 gttwork 于 2018-5-14 15:37 编辑
    - |! K( w0 T# w9 N5 O
    , Z" ?# ]; Y$ M( @受到henices大神的帖子https://www.pdawiki.com/forum/thread-21878-1-1.html启发,受益匪浅。
    ! {( |; ~0 G* Q  ?自制的必应在线词典,目前只能查单个的单词,查2个以上的词组会报错,代码如下:
    / q" N0 I0 n& a. U# B4 ]( mimport urllib3) b3 R# m0 D- y4 S& n7 C+ U
    import io" A& |0 R- F" `8 N  h, S( T' A
    import sys
    1 |+ w7 M4 N+ z8 U6 A6 qsys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')7 Q6 p  ]: m: [3 `2 l
    # a5 b, Z6 ]( e% r/ p
    http = urllib3.PoolManager()
    1 n3 ?. y4 n+ w0 ^/ U6 Ir = http.request('GET', 'http://cn.bing.com/dict/search?q=' + sys.argv[1] )
    % Q: N& l( o0 z! Y/ n+ |data = r.data.decode('utf-8')
    7 u- y3 ?' W& W, g& ^. fcss = """<style type="text/css">
    8 W" ^+ `2 b' X# N$ [* m
    + [9 W' T, J4 ^2 w( O8 }0 C2 I) f }: p& c) T& h3 A! X6 f) l
    * b* N; e; i0 D* ^/ O+ n. C
    & R* P2 _& ]1 U' Y8 g5 {* L
    </style>""", {) U  h; N' \# X9 q9 [
    2 z# Y. M" p1 `- @
    print('<head>\n%s\n</head>\n%s' % (css, data))" u# ]# m# A' `1 V2 _: l

    , O& S6 B: b. F  x感谢大神能够指点一二。$ G+ V( U5 }$ o; @- N2 F' e% X
    0 W7 u4 o6 \5 Y: W+ O7 C! X& {4 N

      Y4 i: q2 M6 E0 M0 w

    评分

    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 编辑
    & i" F0 D, A6 r7 Q" N' A% G
    gttwork 发表于 2018-5-14 20:59- Y. O1 \" r1 ~# ?% F
    感谢回复,试了一下,还是不行。
    9 p1 x4 z: I) S

    3 G) }0 y+ D  b+ F' P6 @
    1. s = sys.argv[1:]
      3 N9 t* V$ k1 p- x, S8 b
    2. k = (" ".join(s))$ |0 ?9 u, e( {! M* u
    3. j = k.split(" ")" ]  v2 q6 T% |, X- G
    4. theword = ("+".join(j))2 ~0 {  y+ Z$ A% h
    5. r = http.request('GET', 'http://cn.bing.com/dict/search?q=' + theword)
    复制代码

    3 h0 f3 ?) ^# |8 e5 m6 M  {8 p, |
    这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。3 B$ \2 I' x: b& u! b
      E6 T: Y5 |+ l) B3 w
    说实话我也是一点不懂py,但是这个问题其实不难。' N, g; Y0 P) [. z* Z( I: E- c
    0 }' N& Y# N5 G0 @( J. z
  • TA的每日心情
    慵懒
    2018-8-25 12:29
  • 签到天数: 91 天

    [LV.6]常住居民II

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

    5 s* X" i0 j* p. V9 B* u* y+ K; e
    1. import urllib3) C3 {# v! ~1 o, K/ g# @
    2. from urllib.parse import quote
      / E+ q1 O* C' b
    3. import io& M9 W8 X* P; Y8 A
    4. import sys5 b& @1 W6 M3 l4 A- j$ ^- M
    5. sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')4 w# L1 {/ e8 C. Y" C$ K

    6.   h' D; s9 V# W, v; Y; }, _
    7. http = urllib3.PoolManager()
      % V( F6 N* c+ S+ l8 o: s# X
    8. x = quote(sys.argv[1])
      4 {5 h3 U/ e- V& \
    9. y = "http://cn.bing.com/dict/search?q="& R4 _3 T& `3 [$ d
    10. r = http.request('GET', y+x)6 s9 S# ^, p' R. K: r
    11. data = r.data.decode('utf-8')
      * X" g* u9 X2 p0 {4 o
    12. css = """<style type="text/css">
      * Q$ M  y2 B: a  _1 M
    13. </style>"""9 [2 H9 }. n2 ?5 E# j6 J$ ]
    14. print('<head>\n%s\n</head>\n%s' % (css, data))8 K4 S1 a; k/ m0 i, a  W
    复制代码

    % r; n- I$ m) t% V% p
    1 n! X8 J7 g& V+ ~( ~+ ^效果
    $ A" ]$ X( q9 y" {! T/ _' }( I; ~, b% B* J- X, M- w
    ' I- k/ Z! ?1 H. `

    本帖子中包含更多资源

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

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

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:37:05 | 显示全部楼层
    须佐之男 发表于 2018-5-14 23:17" H( Z' M5 P' I. K( b5 \
    这么写就可以了,这部分替换于你代码里的r,其他的自己添上吧。
    ; Y- `9 ]9 d. m# e7 [! t, O8 [' {  c& o( r
    说实话我也是一点不懂py,但是这个问 ...
      F2 ?, y! e9 p% W; e6 u* a
    非常感谢版主帮助!这个方法成功了。
  • TA的每日心情
    擦汗
    2020-7-23 13:21
  • 签到天数: 353 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-5-15 21:38:45 | 显示全部楼层
    garypang 发表于 2018-5-15 11:13" [9 m) N+ ]- Y& q! x
    效果

    , c( e6 w, o7 D$ y7 t- v& r非常感谢您的详细解答,我试了一下,这个方法也非常好。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-4-19 23:48 , Processed in 0.038603 second(s), 8 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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