掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 903|回复: 5

[使用求助] 已解决|anki试图调整fastWordQuery获取the little dict部分内容失败

[复制链接]
  • TA的每日心情
    慵懒
    2023-12-11 22:15
  • 签到天数: 53 天

    [LV.5]常住居民I

    发表于 2023-8-15 00:49:19 | 显示全部楼层 |阅读模式
    本帖最后由 Eleeeanor 于 2023-8-19 21:12 编辑
    - K) h' ]; D; Y4 n$ \0 e
    0 `' V' x: n8 U1 U: v参考github调整fastWQ,在插件的dict文件夹加入LDOCE5.py和TLD.py文件,改写了路径。然后一打开anki就报错,如下:5 s8 R2 L$ b% B2 \
    “错误 8 g/ ?/ n: ]  t( k' Z
    有一个错误发生了.请在按住shift键的同时启动Anki,这样可以临时的禁用您已经安装的插件。 0 E# e; \$ A" V
    如果仅仅是因为插件引起的问题,请选择工具>插件菜单项来将出错的的插件设置成失效,然后重启Anki,重复以上的步骤直到你发现了具体是哪个插件引起的问题。 ! Q) }& v5 \- G- z% k
    当你已经发现是因为插件引起的问题,请在我们的支持网站上 [插件支持](https://help.ankiweb.net/discussions/add-ons/) 上报告问题。 3 J$ z- U) U. X" X7 o3 |& \& @
    调试信息:
    4 H; E+ j6 z2 r2 z& VAnki 2.1.35 (84dcaa86) Python 3.8.0 Qt 5.14.2 PyQt 5.14.2
    % _9 j# `/ A6 i2 x& I4 tPlatform: Windows 10
    ) B  S, D. w2 j+ q4 UFlags: frz=True ao=True sv=2- \- i  B0 |4 s! O* A; v- f% k% D& I
    Add-ons, last update check: 2023-08-14 02:35:39
    8 ^- y  B$ A3 K# K, x% G
    ) @* q, O  h' l, Y  ~: ?Caught exception:) x! Y' G/ B0 q5 \; |; e( ~
    Traceback (most recent call last):# C$ X+ |7 P  }( O
      File "aqt\progress.py", line 53, in handler
    $ h% A) m4 e. `' h7 R+ U$ B  File "aqt\main.py", line 142, in on_window_init) }/ C- D, ~5 y' P# O: t$ Q
      File "aqt\main.py", line 190, in setupProfileAfterWebviewsLoaded' G' b$ P6 R& S" T
      File "aqt\main.py", line 231, in setupProfile
    $ j3 ]2 c3 M& ^+ W# P- O' |. R8 E  File "aqt\main.py", line 427, in loadProfile4 P1 H( g3 Q- W( ^8 q# k0 q
      File "aqt\gui_hooks.py", line 2033, in __call__0 T" P4 y8 S( j- ?2 `
      File "anki\hooks.py", line 583, in runHook2 N( t/ H' O( A0 @0 t. [0 S; C  Q! K! P
      File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\__init__.py", line 37, in start_here/ Q: E( O* |3 X0 x. q
        from . import common as fastwq1 U$ w) n2 O6 k1 c3 {: }
      File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\common.py", line 29, in <module>" _: w8 _2 [4 g  V
        from .gui import show_about_dialog, show_options  # , check_updates
    : Z/ d) U- z0 B) b& b& r6 u  File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\gui\__init__.py", line 3, in <module>' y6 w, b' ?& C) b1 O  {) u: F
        from .common import *
    . }9 T( v! n8 M' f  File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\gui\common.py", line 28, in <module>
    " n" P6 S$ a7 @1 [  Q    from ..service import service_manager, service_pool6 y0 l* P0 G8 H; B; W
      File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\service\__init__.py", line 24, in <module>2 M6 w% g4 ]! H% r& \9 ~8 u
        service_manager = ServiceManager()                             # Service Manager  _' `' r( M7 O' q$ |' H
      File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\service\manager.py", line 35, in __init__7 f2 l+ y2 Z- J: {
        self.update_services()
    6 E0 ?! l- |% _4 h! S& `6 r  File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\service\manager.py", line 43, in update_services
    * [: X% k, T5 v, J6 i; N2 q  x    self.web_services, self.local_custom_services = self._get_services_from_files()
    ( ^0 r5 I! O/ ^* q/ [) W8 W  File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\service\manager.py", line 78, in _get_services_from_files
    " e: d; X5 g# K" ]5 N0 c  g    module = importlib.import_module(
    6 ~& ~* a3 `2 m, d  File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\utils\importlib.py", line 43, in import_module
    0 W" I. Z$ k$ l/ M4 c3 I* A    __import__(name)
    8 {) m2 T+ f  E" Y" x$ G/ ]& i+ s  File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\service\dict\LDOCE5.py", line 75 c0 |$ X" T; E' ?; V
        <!DOCTYPE html>
    ' y7 L+ y1 I2 }. A& L5 {    ^
    ! P- \" y: z! i* WSyntaxError: invalid syntax”
    6 O& N6 P- J; D+ L1 L" l4 h, M2 F) B6 k; u9 `6 B) A+ m% R
    我现在把LDOCE5.py和TLD.py文件删除,使用fastWQ依然报错用不了了。求大佬看看,小小报酬500米不成敬意
    ) `- i( D( {: l# d; u: ]- ~) I6 U7 v* J- S; p# `
    ----------------------------
    : [9 q: c$ L* G+ D. j9 d7 ?$ \
    3 p' h; p# h9 q4 L7 h$ X# u8.19更新 其实一开始的问题是用fast WQ查询了TLD但是卡片里总是不显示,应该是config.ini造成的,我也不知道怎么改。而且我不想要TLD最下面的释义部分。目前的解决方式是下载了the little dict的前身早期版本没有释义和音频,wordfrequency词频词典,直接用fast WQ查询。
  • TA的每日心情
    慵懒
    2023-5-22 13:56
  • 签到天数: 542 天

    [LV.9]以坛为家II

    发表于 2023-8-16 14:54:59 | 显示全部楼层
    我也碰到过类似的问题,苦于自己不懂编程,只能用最笨的办法; `( l7 X% @* g% l0 r  f
    我的经验是插件里面的哪些.py文件都保持原样不做任何改动,然后重新复制一份进行修改,再放到这个文件夹里面就可以识别,不会报错" ^' D1 O' _& i, t- O+ v
    另外,我觉得你用的这个插件都是四年前了,有点久,我用的是论坛修改过的版本,放.py文件的位置都不一样

    评分

    1

    查看全部评分

  • TA的每日心情
    慵懒
    2023-12-11 22:15
  • 签到天数: 53 天

    [LV.5]常住居民I

     楼主| 发表于 2023-8-19 21:17:25 | 显示全部楼层
    zgzzx10 发表于 2023-8-16 14:54* G; c6 U- @2 P7 ]  u( Z1 }( W& ^
    我也碰到过类似的问题,苦于自己不懂编程,只能用最笨的办法
    & R0 E" K4 J3 a; ~我的经验是插件里面的哪些.py文件都保持原样不 ...
    ( E2 D0 ~1 O$ T0 O9 J/ A8 p
    感谢回复,我去下了论坛里的这个修改版fastWQ,最后还是放弃改py文件了,直接用the little dict前身早期版本了

    该用户从未签到

    发表于 2023-8-20 14:18:17 | 显示全部楼层
    这种问题可能比较复杂,看最下面是:
    ' k* H0 S& Z* _5 }File "C:\Users\surface\AppData\Roaming\Anki2\addons21\1807206748\service\dict\LDOCE5.py", line 7* Z2 A6 W2 i7 p1 r1 s+ o
    6 g- j" U- l& S% Y8 `+ C    <!DOCTYPE html>9 @( d' P5 e( T4 r/ L
        ^4 y3 c+ {+ g% z7 r4 F6 i; B5 V4 b: D+ X" ]
    SyntaxError: invalid syntax
    7 Z: w. a/ q5 y. x' V& g
    9 \5 [1 U# ]# M8 E8 P所以是 LDOCE5.py", line 7,这个文件有问题,应该是你下载的不对。
    : O. P3 N2 S) b9 I' ~( E; K7 I
    $ ]/ {3 p# _' V: Y! j6 E“而且我不想要TLD最下面的释义部分”,+ C5 I. R# i8 W3 A2 }. M
    修改TLD.py的 代码:
    0 _$ i* F8 t6 {9 d1 K    @export('Chinese_def')
    - X( @" r6 d3 Y& L# l! Z6 R8 u    def chinese_def(self):7 {$ u8 I) y4 @% S6 o2 B# p& F
            m = re.findall(r'<div class="\s*.*<\/div>', self.get_html_all())
    : g& O+ K- d4 U0 V; N        if m:5 Z9 q( }# j! p' i) s
                soup = parse_html(m[0]). @; y9 T7 ?5 j9 a

    , ~* e) Z2 i$ H7 l' f            el_list = soup.findAll('div', {'class':'coca2'})
    $ R$ A, r8 A: K7 u            def_distribution = ''# W. G$ v" a! s! {
                if el_list:
    5 a2 O) o8 o% i& S( V) u                def_distribution = str(el_list[0])! A# N) e* E3 N
                el_list = soup.findAll('div', {'class':'gdc'}) 这里就是释义
    , W# B5 m/ o' A) a            cn_def = ''
    ' P' f) E( o) e" N9 k            if el_list:
    % @4 u) o$ B* L5 s5 t* R. P                #cn_def = str(el_list[0]) 所以就删掉这一行,应该就可以了;或者在前面加 #,表示注释掉  这一行
    3 I) i! e$ j! n( _  u: m# R4 @                return def_distribution + cn_def
    + s, \. L" l6 _7 y4 t        return ''  ]0 r) D* S9 |/ b

    该用户从未签到

    发表于 2023-8-20 14:43:44 | 显示全部楼层
    “而且我不想要TLD最下面的释义部分”,
    2 E1 r  p$ s1 |" n1 b或者另一个思路吧,在anki中改 css,让释义的部分不显示,就是在 anki 模板 styling 中,找到 类似:* _3 I# g. c) _3 [6 Y1 h
    .gdc {
    5 g+ J: F9 H! H9 \display: none;   /* 加上这行即可  */
    " O6 k& u' i# {8 C3 |1 Z- X$ R8 Q}

    评分

    1

    查看全部评分

  • TA的每日心情
    开心
    2020-10-31 07:41
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2023-8-20 18:42:24 | 显示全部楼层
    已经有新版FastQuery了6 I% n: r4 ]- B+ [. G- O/ x

    - T8 r1 M3 @, u( [5 w. x  ihttps://ankiweb.net/shared/info/103636257
    / d5 V6 w1 z6 Z7 R9 rhttps://github.com/sirius-fan/FastWordQuery
    , h" z! ~& {: X- E5 u  w  B' z; _/ d) W6 |+ F
    目前使用正常,就是有些辞典还不能正常使用。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-4-28 21:06 , Processed in 0.081305 second(s), 12 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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