查看: 331|回复: 4
打印 上一主题 下一主题

[讨论] 如何抓取 The free dictionary 网站中的 idioms 部分

[复制链接]
  • TA的每日心情
    奋斗
    2021-5-29 12:47
  • 签到天数: 52 天

    [LV.5]常住居民I

    3

    主题

    201

    回帖

    1502

    积分

    解元

    Rank: 5Rank: 5

    积分
    1502
    跳转到指定楼层
    1
    发表于 2021-3-5 22:22:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    本帖最后由 夏俊文 于 2021-3-5 22:29 编辑

      目前论坛已经有几部非常不错的 idioms 词典适合大家使用 —— urban dictionary,baidu 大的 8 in 1。除此之外, the free dictionary 上的 idioms 词典也是非常不错的,甚至在某些方面胜于前面提到的两部。 这本虽然偶尔有人抓取,但是各个版本都不太完美。目前我能找到的比较好的版本是这个 https://www.pdawiki.com/forum/fo ... &extra=page%3D1 。抓取的很全,但是没有保留重定向的词头。 例如在网站上查询 they'd as soon do something 会自动跳转到 (one) would (just) as soon (do something)。个人认为 idioms 词典制作最大的困难在于合并多部词典,和词头拆分,而这个网站在这两部分都做了深度的处理。如果能完整的离线这本词典,那就太好了。
      经过我的观察暂时没有发现这本词典有完整的索引页面,也没找到前辈们留下的 python 脚本。目前我的想法是每查一个 idiom 后在网站底部有一个 full browser,可以利用这个来逐个查询,并获取下一个 idiom 的词头。但是这个 full browser 列出的是所有字典的索引,包括法律词典,百科等,如果使用这个方法估计是会很费劲。不知道大家有没有什么好办法。
      最终如果成功,应该能得到一个词头数在30万以上,词条在8万左右的一部 idioms 词典。
  • TA的每日心情
    无聊
    2020-12-6 11:39
  • 签到天数: 198 天

    [LV.7]常住居民III

    16

    主题

    581

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    32352

    QQ 章

    2
    发表于 2021-3-6 12:04:13 | 只看该作者
    这网站有三份索引,分别是主页的browser(字母索引),查询界面的分词典索引以及总索引(从头开始循环获取),每种获取方式拿到的都不完整。重定向当时有45万+。楼主如果打算重下,可以拿原先的词头生成索引,会比一个个循环快些。

    评分

    1

    查看全部评分

  • TA的每日心情
    奋斗
    2021-5-29 12:47
  • 签到天数: 52 天

    [LV.5]常住居民I

    3

    主题

    201

    回帖

    1502

    积分

    解元

    Rank: 5Rank: 5

    积分
    1502
    3
     楼主| 发表于 2021-3-6 14:37:36 | 只看该作者
    Lynvia 发表于 2021-3-6 12:04
    这网站有三份索引,分别是主页的browser(字母索引),查询界面的分词典索引以及总索引(从头开始循环获取 ...

    确实如此,主页的browser只有部分词头,分词典索引只包含了非重定向的词头,目前看来只有从头循环再通过底部的full browser来获取完整的索引了,感觉难度有点大。不知道可否分享一下当时抓取时用到的python脚本和索引,想偷点懒。也不知道最后能不能成功

    该用户从未签到

    539

    主题

    3046

    回帖

    25万

    积分

    翰林院编修

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    251476

    翰林院专用章灌水大神章笑傲江湖章小蜜蜂章管理组专用章

    4
    发表于 2021-3-7 15:38:01 | 只看该作者
    本帖最后由 klwo2 于 2021-3-7 15:41 编辑

    这个网站本身就是不求整齐只求全面的

    【这个网站在这两部分都做了深度的处理】是错觉,「his heart stands still」固然可以跳转到「(one's) heart stands still」,「their hearts stand still」就不行了,人不是机器,如果人自己不知道stood是stand的过去时,my就是one's,hearts是复数,想靠穷举,我觉得没意思

    我知道有的朋友是喜欢在技术上精益求精的,我只是说单就The free dictionary而言,人要稍微勤快一点,才会受益。还是以「(one's) heart stands still」为例:

    One experiences a very strong emotions, especially excitement, nervousness, or fear, such that it feels as though one's heart stops beating for a moment.


    《英汉大词典2》的形式是「Sb.'s heart stands still」

    Sb.'s heart stands still.
    某人吓呆了。


    《英汉大词典2》显然是片面了。

    用好The free dictionary,能发现英汉大词典一堆毛病呢,按理说缺那么些跳转,根本碍不了勤奋的人
  • TA的每日心情
    奋斗
    2021-5-29 12:47
  • 签到天数: 52 天

    [LV.5]常住居民I

    3

    主题

    201

    回帖

    1502

    积分

    解元

    Rank: 5Rank: 5

    积分
    1502
    5
     楼主| 发表于 2021-3-7 17:09:34 | 只看该作者
    klwo2 发表于 2021-3-7 15:38
    这个网站本身就是不求整齐只求全面的

    【这个网站在这两部分都做了深度的处理】是错觉,「his heart stands ...

    大大说的很对,但是现有版本在索引上问题有点大。以搜索heart stands still时为例,它不能自动跳转到 (one’s) heart stands still,个人感觉还是需要做一点点处理的。这里是以欧路词典为例,我本人常用的是ios版的欧路词典。如果是电脑版的goldendict,在搜索时会有提示能够提示出(one’s) heart stands still。