Add cambridge ECS & ECT
This commit is contained in:
parent
13bf8f6c30
commit
e36216552c
@ -2,28 +2,31 @@
|
||||
import os
|
||||
from ..base import *
|
||||
|
||||
cambridge_url_base = u'https://dictionary.cambridge.org'
|
||||
cambridge_url_base = u'https://dictionary.cambridge.org/dictionary/english/'
|
||||
cambridge_download_mp3 = True
|
||||
cambridge_download_img = True
|
||||
|
||||
@register([u'剑桥英英', u'Cambridge'])
|
||||
class Cambridge(WebService):
|
||||
|
||||
def __init__(self):
|
||||
super(Cambridge, self).__init__()
|
||||
|
||||
def _get_url(self):
|
||||
return cambridge_url_base
|
||||
|
||||
def _get_from_api(self):
|
||||
data = self.get_response(u'{0}/dictionary/english/{1}'.format(cambridge_url_base, self.quote_word))
|
||||
data = self.get_response(u'{0}{1}'.format(self._get_url(), self.quote_word))
|
||||
soup = parse_html(data)
|
||||
result = {
|
||||
'pronunciation': {'AmE': '', 'BrE': '', 'AmEmp3': '', 'BrEmp3': ''},
|
||||
'image': '',
|
||||
'thumb': '',
|
||||
'def': ''
|
||||
'def': '',
|
||||
'def_list': []
|
||||
}
|
||||
|
||||
#english
|
||||
element = soup.find('div', class_='link')
|
||||
element = soup.find('div', class_='di-body')
|
||||
if element:
|
||||
#页
|
||||
elements = element.find_all('div', class_='entry-body__el clrd js-share-holder')
|
||||
|
||||
12
addons/fastwq/service/dict/cambridge_cs.py
Normal file
12
addons/fastwq/service/dict/cambridge_cs.py
Normal file
@ -0,0 +1,12 @@
|
||||
#-*- coding:utf-8 -*-
|
||||
from ..base import *
|
||||
from .cambridge import Cambridge
|
||||
|
||||
@register([u'剑桥词典-英汉简', u'Cambridge(英汉简)'])
|
||||
class CambridgeCS(Cambridge):
|
||||
|
||||
def __init__(self):
|
||||
super(CambridgeCS, self).__init__()
|
||||
|
||||
def _get_url(self):
|
||||
return u'https://dictionary.cambridge.org/us/dictionary/english-chinese-simplified/'
|
||||
12
addons/fastwq/service/dict/cambridge_ct.py
Normal file
12
addons/fastwq/service/dict/cambridge_ct.py
Normal file
@ -0,0 +1,12 @@
|
||||
#-*- coding:utf-8 -*-
|
||||
from ..base import *
|
||||
from .cambridge import Cambridge
|
||||
|
||||
@register([u'剑桥词典-英汉繁', u'Cambridge(英汉繁)'])
|
||||
class CambridgeCT(Cambridge):
|
||||
|
||||
def __init__(self):
|
||||
super(CambridgeCT, self).__init__()
|
||||
|
||||
def _get_url(self):
|
||||
return u'https://dictionary.cambridge.org/us/dictionary/english-chinese-traditional/'
|
||||
12
addons/fastwq/service/dict/cambridge_ee.py
Normal file
12
addons/fastwq/service/dict/cambridge_ee.py
Normal file
@ -0,0 +1,12 @@
|
||||
#-*- coding:utf-8 -*-
|
||||
from ..base import *
|
||||
from .cambridge import Cambridge
|
||||
|
||||
@register([u'剑桥词典-英英', u'Cambridge(English)'])
|
||||
class CambridgeEE(Cambridge):
|
||||
|
||||
def __init__(self):
|
||||
super(CambridgeEE, self).__init__()
|
||||
|
||||
def _get_url(self):
|
||||
return u'https://dictionary.cambridge.org/dictionary/english/'
|
||||
@ -94,6 +94,8 @@ class ServiceManager(object):
|
||||
continue
|
||||
if not(issubclass(clazz, WebService) or issubclass(clazz, LocalService)):
|
||||
continue
|
||||
if getattr(clazz, '__register_label__', None) is None:
|
||||
continue
|
||||
service = service_wrap(clazz, *args)
|
||||
service.__title__ = getattr(clazz, '__register_label__', name)
|
||||
service.__unique__ = name
|
||||
@ -103,6 +105,8 @@ class ServiceManager(object):
|
||||
# get the customized local services
|
||||
if issubclass(clazz, LocalService):
|
||||
local_custom_services.append(service)
|
||||
web_services = sorted(web_services, key=lambda service: service.__title__)
|
||||
local_custom_services = sorted(local_custom_services, key=lambda service: service.__title__)
|
||||
return web_services, local_custom_services
|
||||
|
||||
def _get_available_local_services(self):
|
||||
|
||||
@ -2,18 +2,20 @@
|
||||
import os
|
||||
from ..base import *
|
||||
|
||||
cambridge_url_base = u'https://dictionary.cambridge.org'
|
||||
cambridge_url_base = u'https://dictionary.cambridge.org/dictionary/english/'
|
||||
cambridge_download_mp3 = True
|
||||
cambridge_download_img = True
|
||||
|
||||
@register([u'剑桥英英', u'Cambridge'])
|
||||
class Cambridge(WebService):
|
||||
|
||||
def __init__(self):
|
||||
super(Cambridge, self).__init__()
|
||||
|
||||
def _get_url(self):
|
||||
return cambridge_url_base
|
||||
|
||||
def _get_from_api(self):
|
||||
data = self.get_response(u'{0}/dictionary/english/{1}'.format(cambridge_url_base, self.quote_word))
|
||||
data = self.get_response(u'{0}{1}'.format(self._get_url(), self.quote_word))
|
||||
soup = parse_html(data)
|
||||
result = {
|
||||
'pronunciation': {'AmE': '', 'BrE': '', 'AmEmp3': '', 'BrEmp3': ''},
|
||||
@ -24,7 +26,7 @@ class Cambridge(WebService):
|
||||
}
|
||||
|
||||
#english
|
||||
element = soup.find('div', class_='link')
|
||||
element = soup.find('div', class_='di-body')
|
||||
if element:
|
||||
#页
|
||||
elements = element.find_all('div', class_='entry-body__el clrd js-share-holder')
|
||||
|
||||
12
addons21/fastwq/service/dict/cambridge_cs.py
Normal file
12
addons21/fastwq/service/dict/cambridge_cs.py
Normal file
@ -0,0 +1,12 @@
|
||||
#-*- coding:utf-8 -*-
|
||||
from ..base import *
|
||||
from .cambridge import Cambridge
|
||||
|
||||
@register([u'剑桥词典-英汉简', u'Cambridge(英汉简)'])
|
||||
class CambridgeCS(Cambridge):
|
||||
|
||||
def __init__(self):
|
||||
super(CambridgeCS, self).__init__()
|
||||
|
||||
def _get_url(self):
|
||||
return u'https://dictionary.cambridge.org/us/dictionary/english-chinese-simplified/'
|
||||
12
addons21/fastwq/service/dict/cambridge_ct.py
Normal file
12
addons21/fastwq/service/dict/cambridge_ct.py
Normal file
@ -0,0 +1,12 @@
|
||||
#-*- coding:utf-8 -*-
|
||||
from ..base import *
|
||||
from .cambridge import Cambridge
|
||||
|
||||
@register([u'剑桥词典-英汉繁', u'Cambridge(英汉繁)'])
|
||||
class CambridgeCT(Cambridge):
|
||||
|
||||
def __init__(self):
|
||||
super(CambridgeCT, self).__init__()
|
||||
|
||||
def _get_url(self):
|
||||
return u'https://dictionary.cambridge.org/us/dictionary/english-chinese-traditional/'
|
||||
12
addons21/fastwq/service/dict/cambridge_ee.py
Normal file
12
addons21/fastwq/service/dict/cambridge_ee.py
Normal file
@ -0,0 +1,12 @@
|
||||
#-*- coding:utf-8 -*-
|
||||
from ..base import *
|
||||
from .cambridge import Cambridge
|
||||
|
||||
@register([u'剑桥词典-英英', u'Cambridge(English)'])
|
||||
class CambridgeEE(Cambridge):
|
||||
|
||||
def __init__(self):
|
||||
super(CambridgeEE, self).__init__()
|
||||
|
||||
def _get_url(self):
|
||||
return u'https://dictionary.cambridge.org/dictionary/english/'
|
||||
@ -84,6 +84,8 @@ class ServiceManager(object):
|
||||
continue
|
||||
if not(issubclass(clazz, WebService) or issubclass(clazz, LocalService)):
|
||||
continue
|
||||
if getattr(clazz, '__register_label__', None) is None:
|
||||
continue
|
||||
service = service_wrap(clazz, *args)
|
||||
service.__title__ = getattr(clazz, '__register_label__', name)
|
||||
service.__unique__ = name
|
||||
@ -93,6 +95,8 @@ class ServiceManager(object):
|
||||
# get the customized local services
|
||||
if issubclass(clazz, LocalService):
|
||||
local_custom_services.append(service)
|
||||
web_services = sorted(web_services, key=lambda service: service.__title__)
|
||||
local_custom_services = sorted(local_custom_services, key=lambda service: service.__title__)
|
||||
return web_services, local_custom_services
|
||||
|
||||
def _get_available_local_services(self):
|
||||
|
||||
Loading…
Reference in New Issue
Block a user