내가 선택한 2~3개의 온라인 사전(예: Longman, Cambridge, Oxford)에서 특정 단어(예: "obey")에 대한 다양한 정의를 찾아보고 싶습니다. 그런 다음 터미널에 하나씩 나열하십시오. 이것을 스크립트로 바꿀 수 있나요? 어디서부터 시작해야 하나요?
답변1
이를 수행하는 한 가지 방법은 기존 사전 수집기를 활용하는 것입니다.무료 사전또는한 번 봐출력을 텍스트 형식으로 변환하기만 하면 됩니다.
예를 들어 The Free Dictionary의 경우 다음 함수를 정의할 수 있습니다.
$ tfd() {
if [[ $# -ne 1 ]]; then echo "Syntax: webdict <word>"; return; fi
python3 -c "
import bs4,requests
sel = '[data-src=hm], [data-src=hc_dict], [data-src=rHouse]'
page = requests.get('https://www.thefreedictionary.com/$1').text
for d in bs4.BeautifulSoup(page, 'html.parser').select(sel): print(d, end='<hr>')" |
w3m -dump -T text/html;
}
그런 다음 이를 사용하여 단어를 찾을 수 있습니다.
$ tfd fain
(제대로 작동하려면 python3, python3-requests, python3-bs4 및 w3m 패키지가 필요합니다.)
한 가지 분명한 단점은 수집자가 제공하는 사전 및 해당 형식의 선택이 제한된다는 것입니다.
또 다른 옵션은 적절한 콘솔 사전을 사용하는 것입니다.SDCV. 그러나 모든 온라인 사전이 자동화된 액세스를 위한 API를 제공하는 것은 아니므로 이 방법을 통해 합법적으로 사용할 수 있는 사전의 수가 제한됩니다.