Merge branch 'ocr' into 'master'
Ocr Change the category of help function from example to help See merge request !3
Showing
4 changed files
with
42 additions
and
42 deletions
... | @@ -69,7 +69,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -69,7 +69,7 @@ exports.run = async (client, msg, args, prefix) => { |
69 | exports.config = { | 69 | exports.config = { |
70 | name: '도움말', | 70 | name: '도움말', |
71 | aliases: ['도움', '명령어', 'commands', 'help'], | 71 | aliases: ['도움', '명령어', 'commands', 'help'], |
72 | - category: ['example'], | 72 | + category: ['Help'], |
73 | des: ['봇에 대한 명령어 리스트들을 불러옵니다.'], | 73 | des: ['봇에 대한 명령어 리스트들을 불러옵니다.'], |
74 | use: ['!도움말 <명령어>'] | 74 | use: ['!도움말 <명령어>'] |
75 | }; | 75 | }; |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -75,14 +75,11 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -75,14 +75,11 @@ exports.run = async (client, msg, args, prefix) => { |
75 | } | 75 | } |
76 | }; | 76 | }; |
77 | 77 | ||
78 | -function kor(attachment) { | ||
79 | - | ||
80 | -} | ||
81 | 78 | ||
82 | exports.config = { | 79 | exports.config = { |
83 | name: 'ocr', | 80 | name: 'ocr', |
84 | aliases: ['ㅐㅊㄱ'], | 81 | aliases: ['ㅐㅊㄱ'], |
85 | - category: ['ocr'], | 82 | + category: ['Ocr'], |
86 | des: ['이미지를 첨부하고 명령어를 입력하면, 이미지에 있는 텍스트를 추출합니다.'], | 83 | des: ['이미지를 첨부하고 명령어를 입력하면, 이미지에 있는 텍스트를 추출합니다.'], |
87 | use: ['!ocr <사용 언어>'] | 84 | use: ['!ocr <사용 언어>'] |
88 | }; | 85 | }; |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -12,13 +12,13 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -12,13 +12,13 @@ exports.run = async (client, msg, args, prefix) => { |
12 | const puppeteer = require('puppeteer'); | 12 | const puppeteer = require('puppeteer'); |
13 | 13 | ||
14 | const withBrowser = async (fn) => { | 14 | const withBrowser = async (fn) => { |
15 | - const browser = await puppeteer.launch({headless:true}); | 15 | + const browser = await puppeteer.launch({ headless: true }); |
16 | try { | 16 | try { |
17 | return await fn(browser); | 17 | return await fn(browser); |
18 | } finally { | 18 | } finally { |
19 | await browser.close(); | 19 | await browser.close(); |
20 | } | 20 | } |
21 | - } | 21 | + }; |
22 | 22 | ||
23 | const withPage = (browser) => async (fn) => { | 23 | const withPage = (browser) => async (fn) => { |
24 | const page = await browser.newPage(); | 24 | const page = await browser.newPage(); |
... | @@ -27,7 +27,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -27,7 +27,7 @@ exports.run = async (client, msg, args, prefix) => { |
27 | } finally { | 27 | } finally { |
28 | await page.close(); | 28 | await page.close(); |
29 | } | 29 | } |
30 | - } | 30 | + }; |
31 | 31 | ||
32 | const urls = ['http://www.bestpen.kr/shop/shopbrand.html?&search=', 'http://www.pencafe.co.kr/shop/shopbrand.html?&search=', 'https://blueblack.co.kr/product/search.html?&keyword=', 'http://japan9.co.kr/shop/shopbrand.html?&search=']; | 32 | const urls = ['http://www.bestpen.kr/shop/shopbrand.html?&search=', 'http://www.pencafe.co.kr/shop/shopbrand.html?&search=', 'https://blueblack.co.kr/product/search.html?&keyword=', 'http://japan9.co.kr/shop/shopbrand.html?&search=']; |
33 | const results = await withBrowser(async (browser) => { | 33 | const results = await withBrowser(async (browser) => { |
... | @@ -35,11 +35,11 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -35,11 +35,11 @@ exports.run = async (client, msg, args, prefix) => { |
35 | return withPage(browser)(async (page) => { | 35 | return withPage(browser)(async (page) => { |
36 | // 각 사이트별 제품 검색 | 36 | // 각 사이트별 제품 검색 |
37 | var result = ''; | 37 | var result = ''; |
38 | - site : switch(urls.indexOf(url)) { | 38 | + site: switch (urls.indexOf(url)) { |
39 | case 0: | 39 | case 0: |
40 | // 베스트펜 | 40 | // 베스트펜 |
41 | try { | 41 | try { |
42 | - var bestpen_url = url + search + "&sort=price" | 42 | + var bestpen_url = url + search + "&sort=price"; |
43 | await page.goto(bestpen_url); | 43 | await page.goto(bestpen_url); |
44 | // console.log("bestpen crawling"); | 44 | // console.log("bestpen crawling"); |
45 | 45 | ||
... | @@ -48,14 +48,14 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -48,14 +48,14 @@ exports.run = async (client, msg, args, prefix) => { |
48 | } catch { ; } // 사이트 링크에 이상이 생겼거나 검색에 문제가 생겼을 경우 프로그램이 종료되는 것을 방지 | 48 | } catch { ; } // 사이트 링크에 이상이 생겼거나 검색에 문제가 생겼을 경우 프로그램이 종료되는 것을 방지 |
49 | 49 | ||
50 | // 검색 결과 가져오기 (최대 4개) | 50 | // 검색 결과 가져오기 (최대 4개) |
51 | - searchLoop : for (var i = 1; i <= 4; i++) { | 51 | + searchLoop: for (var i = 1; i <= 4; i++) { |
52 | try { | 52 | try { |
53 | - var title = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child('+i+') > dd > ul > li.prd-name > a', element => { | 53 | + var title = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child(' + i + ') > dd > ul > li.prd-name > a', element => { |
54 | return element.textContent; | 54 | return element.textContent; |
55 | }); | 55 | }); |
56 | // console.log("베스트펜 검색 결과 제품명 : ", title); | 56 | // console.log("베스트펜 검색 결과 제품명 : ", title); |
57 | 57 | ||
58 | - var link = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child('+i+') > dt > a', element => { | 58 | + var link = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child(' + i + ') > dt > a', element => { |
59 | return element.href; | 59 | return element.href; |
60 | }); | 60 | }); |
61 | // console.log("베스트펜 검색 링크 : ", link); | 61 | // console.log("베스트펜 검색 링크 : ", link); |
... | @@ -65,7 +65,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -65,7 +65,7 @@ exports.run = async (client, msg, args, prefix) => { |
65 | link = link.slice(0, link.indexOf('&search')); | 65 | link = link.slice(0, link.indexOf('&search')); |
66 | 66 | ||
67 | try { | 67 | try { |
68 | - var price = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child('+i+') > dd > ul > li.prd-price > p:nth-child(2) > span.price', element => { | 68 | + var price = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child(' + i + ') > dd > ul > li.prd-price > p:nth-child(2) > span.price', element => { |
69 | return element.textContent; | 69 | return element.textContent; |
70 | }); | 70 | }); |
71 | // console.log("베스트펜 검색 결과 가격 : ", price); | 71 | // console.log("베스트펜 검색 결과 가격 : ", price); |
... | @@ -90,7 +90,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -90,7 +90,7 @@ exports.run = async (client, msg, args, prefix) => { |
90 | case 1: | 90 | case 1: |
91 | // 펜카페 | 91 | // 펜카페 |
92 | try { | 92 | try { |
93 | - var pencafe_url = url + search + "&sort=price" | 93 | + var pencafe_url = url + search + "&sort=price"; |
94 | await page.goto(pencafe_url); | 94 | await page.goto(pencafe_url); |
95 | // console.log("pencafe crawling"); | 95 | // console.log("pencafe crawling"); |
96 | 96 | ||
... | @@ -99,19 +99,19 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -99,19 +99,19 @@ exports.run = async (client, msg, args, prefix) => { |
99 | } catch { ; } // 사이트 링크에 이상이 생겼거나 검색에 문제가 생겼을 경우 프로그램이 종료되는 것을 방지 | 99 | } catch { ; } // 사이트 링크에 이상이 생겼거나 검색에 문제가 생겼을 경우 프로그램이 종료되는 것을 방지 |
100 | 100 | ||
101 | // 검색 결과 가져오기 (최대 4개) | 101 | // 검색 결과 가져오기 (최대 4개) |
102 | - searchLoop : for (var i = 1; i <= 4; i++) { | 102 | + searchLoop: for (var i = 1; i <= 4; i++) { |
103 | try { | 103 | try { |
104 | - var title = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child('+i+') > dd > ul > li.prd-name > a', element => { | 104 | + var title = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child(' + i + ') > dd > ul > li.prd-name > a', element => { |
105 | return element.textContent; | 105 | return element.textContent; |
106 | }); | 106 | }); |
107 | // console.log("펜카페 검색 결과 제품명 : ", title); | 107 | // console.log("펜카페 검색 결과 제품명 : ", title); |
108 | 108 | ||
109 | // 펜카페 구조상 제품명 앞에 할인률(ex. 17%)이 붙는 경우가 많음 -> 제거 | 109 | // 펜카페 구조상 제품명 앞에 할인률(ex. 17%)이 붙는 경우가 많음 -> 제거 |
110 | - if (title.indexOf('%') != -1) { title = title.slice(title.indexOf('%')+1); } | 110 | + if (title.indexOf('%') != -1) { title = title.slice(title.indexOf('%') + 1); } |
111 | // 펜카페 구조상 제품명 뒤에 사족(ex. (색상선택/금장~~~))이 붙는 경우가 많음 -> 제거 | 111 | // 펜카페 구조상 제품명 뒤에 사족(ex. (색상선택/금장~~~))이 붙는 경우가 많음 -> 제거 |
112 | - if (title.lastIndexOf(')') == title.length-1) { title = title.slice(0, title.lastIndexOf('(')); } | 112 | + if (title.lastIndexOf(')') == title.length - 1) { title = title.slice(0, title.lastIndexOf('(')); } |
113 | 113 | ||
114 | - var link = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child('+i+') > dd > ul > li.prd-name > a', element => { | 114 | + var link = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child(' + i + ') > dd > ul > li.prd-name > a', element => { |
115 | return element.href; | 115 | return element.href; |
116 | }); | 116 | }); |
117 | // console.log("펜카페 검색 링크 : ", link); | 117 | // console.log("펜카페 검색 링크 : ", link); |
... | @@ -121,7 +121,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -121,7 +121,7 @@ exports.run = async (client, msg, args, prefix) => { |
121 | link = link.slice(0, link.indexOf('&search')); | 121 | link = link.slice(0, link.indexOf('&search')); |
122 | 122 | ||
123 | try { | 123 | try { |
124 | - var price = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child('+i+') > dd > ul > li.prd-price > span', element => { | 124 | + var price = await page.$eval('#searchWrap > div > div.item-wrap > div:nth-child(2) > dl:nth-child(' + i + ') > dd > ul > li.prd-price > span', element => { |
125 | return element.textContent; | 125 | return element.textContent; |
126 | }); | 126 | }); |
127 | // console.log("펜카페 검색 결과 가격 : ", price); | 127 | // console.log("펜카페 검색 결과 가격 : ", price); |
... | @@ -146,7 +146,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -146,7 +146,7 @@ exports.run = async (client, msg, args, prefix) => { |
146 | case 2: | 146 | case 2: |
147 | // 블루블랙 | 147 | // 블루블랙 |
148 | try { | 148 | try { |
149 | - var blueblack_url = url + search + "&order_by=priceasc" | 149 | + var blueblack_url = url + search + "&order_by=priceasc"; |
150 | await page.goto(blueblack_url); | 150 | await page.goto(blueblack_url); |
151 | // console.log("blublack crawling"); | 151 | // console.log("blublack crawling"); |
152 | 152 | ||
... | @@ -155,14 +155,14 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -155,14 +155,14 @@ exports.run = async (client, msg, args, prefix) => { |
155 | } catch { ; } // 사이트 링크에 이상이 생겼거나 검색에 문제가 생겼을 경우 프로그램이 종료되는 것을 방지 | 155 | } catch { ; } // 사이트 링크에 이상이 생겼거나 검색에 문제가 생겼을 경우 프로그램이 종료되는 것을 방지 |
156 | 156 | ||
157 | // 검색 결과 가져오기 (최대 4개) | 157 | // 검색 결과 가져오기 (최대 4개) |
158 | - searchLoop : for (var i = 1; i <= 4; i++) { | 158 | + searchLoop: for (var i = 1; i <= 4; i++) { |
159 | try { | 159 | try { |
160 | - var title = await page.$eval('#contents > div:nth-child(4) > ul > li:nth-child('+i+') > div.description > p.name > a > span:nth-child(2)', element => { | 160 | + var title = await page.$eval('#contents > div:nth-child(4) > ul > li:nth-child(' + i + ') > div.description > p.name > a > span:nth-child(2)', element => { |
161 | return element.textContent; | 161 | return element.textContent; |
162 | }); | 162 | }); |
163 | // console.log("블루블랙 검색 결과 제품명 : ", title); | 163 | // console.log("블루블랙 검색 결과 제품명 : ", title); |
164 | 164 | ||
165 | - var link = await page.$eval('#contents > div:nth-child(4) > ul > li:nth-child('+i+') > div.description > p.name > a', element => { | 165 | + var link = await page.$eval('#contents > div:nth-child(4) > ul > li:nth-child(' + i + ') > div.description > p.name > a', element => { |
166 | return element.href; | 166 | return element.href; |
167 | }); | 167 | }); |
168 | // console.log("블루블랙 검색 링크 : ", link); | 168 | // console.log("블루블랙 검색 링크 : ", link); |
... | @@ -173,7 +173,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -173,7 +173,7 @@ exports.run = async (client, msg, args, prefix) => { |
173 | 173 | ||
174 | try { | 174 | try { |
175 | // 품절 아이콘이 있는지 확인 | 175 | // 품절 아이콘이 있는지 확인 |
176 | - await page.$eval('#contents > div:nth-child(4) > ul > li:nth-child('+i+') > div.description > div.status > div > img', element => { | 176 | + await page.$eval('#contents > div:nth-child(4) > ul > li:nth-child(' + i + ') > div.description > div.status > div > img', element => { |
177 | return element.getAttribute("src"); | 177 | return element.getAttribute("src"); |
178 | }); | 178 | }); |
179 | 179 | ||
... | @@ -181,7 +181,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -181,7 +181,7 @@ exports.run = async (client, msg, args, prefix) => { |
181 | } catch { | 181 | } catch { |
182 | try { | 182 | try { |
183 | // 품절 아이콘이 없을 경우 | 183 | // 품절 아이콘이 없을 경우 |
184 | - var price = await page.$eval('#contents > div:nth-child(4) > ul > li:nth-child('+i+') > div.description > ul > li:nth-child(3) > span:nth-child(2)', element => { | 184 | + var price = await page.$eval('#contents > div:nth-child(4) > ul > li:nth-child(' + i + ') > div.description > ul > li:nth-child(3) > span:nth-child(2)', element => { |
185 | return element.textContent; | 185 | return element.textContent; |
186 | }); | 186 | }); |
187 | } catch { | 187 | } catch { |
... | @@ -209,7 +209,7 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -209,7 +209,7 @@ exports.run = async (client, msg, args, prefix) => { |
209 | await page.goto(url); | 209 | await page.goto(url); |
210 | // console.log("japannine crawling"); | 210 | // console.log("japannine crawling"); |
211 | 211 | ||
212 | - var japannine_url = url + search + "&sort=price" | 212 | + var japannine_url = url + search + "&sort=price"; |
213 | await page.goto(japannine_url); | 213 | await page.goto(japannine_url); |
214 | // console.log("japannine crawling"); | 214 | // console.log("japannine crawling"); |
215 | 215 | ||
... | @@ -218,9 +218,9 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -218,9 +218,9 @@ exports.run = async (client, msg, args, prefix) => { |
218 | } catch { ; } // 사이트 링크에 이상이 생겼거나 검색에 문제가 생겼을 경우 프로그램이 종료되는 것을 방지 | 218 | } catch { ; } // 사이트 링크에 이상이 생겼거나 검색에 문제가 생겼을 경우 프로그램이 종료되는 것을 방지 |
219 | 219 | ||
220 | // 검색 결과 가져오기 (최대 4개) | 220 | // 검색 결과 가져오기 (최대 4개) |
221 | - searchLoop : for (var i = 1; i <= 4; i++) { | 221 | + searchLoop: for (var i = 1; i <= 4; i++) { |
222 | try { | 222 | try { |
223 | - var title = await page.$eval('#mk_search_production > tbody > tr:nth-child('+(5+((i-1)*4))+') > td:nth-child(3) > a', element => { | 223 | + var title = await page.$eval('#mk_search_production > tbody > tr:nth-child(' + (5 + ((i - 1) * 4)) + ') > td:nth-child(3) > a', element => { |
224 | return element.textContent; | 224 | return element.textContent; |
225 | }); | 225 | }); |
226 | // console.log("재팬나인 검색 결과 제품명 : ", title); | 226 | // console.log("재팬나인 검색 결과 제품명 : ", title); |
... | @@ -228,12 +228,12 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -228,12 +228,12 @@ exports.run = async (client, msg, args, prefix) => { |
228 | // 재팬나인 구조상 제품명 앞에 항상 '/n'이 붙는다 -> 제거 | 228 | // 재팬나인 구조상 제품명 앞에 항상 '/n'이 붙는다 -> 제거 |
229 | title = title.slice(1); | 229 | title = title.slice(1); |
230 | // 재팬나인 구조상 제품명 앞과 뒤에 [쿠폰적용 || 주문예약상품]이 붙는 경우가 많음 -> 제거 | 230 | // 재팬나인 구조상 제품명 앞과 뒤에 [쿠폰적용 || 주문예약상품]이 붙는 경우가 많음 -> 제거 |
231 | - if (title.indexOf('[') == 0) { title = title.slice(title.indexOf(']')+1); } | 231 | + if (title.indexOf('[') == 0) { title = title.slice(title.indexOf(']') + 1); } |
232 | - if (title.lastIndexOf(']') == title.length-1) { title = title.slice(0, title.lastIndexOf('[')); } | 232 | + if (title.lastIndexOf(']') == title.length - 1) { title = title.slice(0, title.lastIndexOf('[')); } |
233 | - if (title.indexOf('{') == 0) { title = title.slice(title.indexOf('}')+1); } | 233 | + if (title.indexOf('{') == 0) { title = title.slice(title.indexOf('}') + 1); } |
234 | - if (title.lastIndexOf('}') == title.length-1) { title = title.slice(0, title.lastIndexOf('{')); } | 234 | + if (title.lastIndexOf('}') == title.length - 1) { title = title.slice(0, title.lastIndexOf('{')); } |
235 | 235 | ||
236 | - var link = await page.$eval('#mk_search_production > tbody > tr:nth-child('+(5+((i-1)*4))+') > td:nth-child(3) > a', element => { | 236 | + var link = await page.$eval('#mk_search_production > tbody > tr:nth-child(' + (5 + ((i - 1) * 4)) + ') > td:nth-child(3) > a', element => { |
237 | return element.href; | 237 | return element.href; |
238 | }); | 238 | }); |
239 | // console.log("재팬나인 검색 링크 : ", link); | 239 | // console.log("재팬나인 검색 링크 : ", link); |
... | @@ -244,19 +244,19 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -244,19 +244,19 @@ exports.run = async (client, msg, args, prefix) => { |
244 | 244 | ||
245 | try { | 245 | try { |
246 | // 품절 아이콘이 있는지 확인 | 246 | // 품절 아이콘이 있는지 확인 |
247 | - var img_src = await page.$eval('#mk_search_production > tbody > tr:nth-child('+(5+((i-1)*4))+') > td:nth-child(6) > img', element => { | 247 | + var img_src = await page.$eval('#mk_search_production > tbody > tr:nth-child(' + (5 + ((i - 1) * 4)) + ') > td:nth-child(6) > img', element => { |
248 | return element.getAttribute("src"); | 248 | return element.getAttribute("src"); |
249 | }); | 249 | }); |
250 | 250 | ||
251 | if (img_src.indexOf('no_amount0') != -1) { var price = 'SOLD OUT'; } | 251 | if (img_src.indexOf('no_amount0') != -1) { var price = 'SOLD OUT'; } |
252 | } catch { | 252 | } catch { |
253 | // 품절 아이콘이 없을 경우 | 253 | // 품절 아이콘이 없을 경우 |
254 | - var price = await page.$eval('#mk_search_production > tbody > tr:nth-child('+(5+((i-1)*4))+') > td.brandprice > span', element => { | 254 | + var price = await page.$eval('#mk_search_production > tbody > tr:nth-child(' + (5 + ((i - 1) * 4)) + ') > td.brandprice > span', element => { |
255 | return element.textContent; | 255 | return element.textContent; |
256 | }); | 256 | }); |
257 | 257 | ||
258 | // 재팬나인 구조상 금액 뒤에 (옵션에 따라 변동)이 붙는 경우가 있다 -> 제거 | 258 | // 재팬나인 구조상 금액 뒤에 (옵션에 따라 변동)이 붙는 경우가 있다 -> 제거 |
259 | - if (price.indexOf('(') != -1) { price = price.slice(0, price.indexOf('원')+1); } | 259 | + if (price.indexOf('(') != -1) { price = price.slice(0, price.indexOf('원') + 1); } |
260 | } | 260 | } |
261 | // console.log("재팬나인 검색 결과 가격 : ", price); | 261 | // console.log("재팬나인 검색 결과 가격 : ", price); |
262 | 262 | ||
... | @@ -277,11 +277,12 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -277,11 +277,12 @@ exports.run = async (client, msg, args, prefix) => { |
277 | 277 | ||
278 | return result; | 278 | return result; |
279 | }); | 279 | }); |
280 | - })) | 280 | + })); |
281 | }); | 281 | }); |
282 | 282 | ||
283 | // 검색 결과 챗봇에 출력 | 283 | // 검색 결과 챗봇에 출력 |
284 | let Commands = new Discord.MessageEmbed() | 284 | let Commands = new Discord.MessageEmbed() |
285 | + | ||
285 | .setTitle(`${search}에 대한 검색 결과`) | 286 | .setTitle(`${search}에 대한 검색 결과`) |
286 | .setColor("E5D49A") | 287 | .setColor("E5D49A") |
287 | // 베스트펜 검색 결과 (ex. 제품명(링크) - 금액) | 288 | // 베스트펜 검색 결과 (ex. 제품명(링크) - 금액) |
... | @@ -291,7 +292,8 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -291,7 +292,8 @@ exports.run = async (client, msg, args, prefix) => { |
291 | // 블루블랙 검색 결과 | 292 | // 블루블랙 검색 결과 |
292 | .addField('블루블랙', `${results[2].slice(0, 1023)}`) | 293 | .addField('블루블랙', `${results[2].slice(0, 1023)}`) |
293 | // 재팬나인 검색 결과 | 294 | // 재팬나인 검색 결과 |
294 | - .addField('재팬나인', `${results[3].slice(0, 1023)}`) | 295 | + .addField('재팬나인', `${results[3].slice(0, 1023)}`); |
296 | + | ||
295 | msg.reply({ embeds: [Commands] }); | 297 | msg.reply({ embeds: [Commands] }); |
296 | } else { | 298 | } else { |
297 | msg.reply("검색어가 없습니다. 검색어를 추가해서 다시 입력해주세요."); | 299 | msg.reply("검색어가 없습니다. 검색어를 추가해서 다시 입력해주세요."); |
... | @@ -300,8 +302,9 @@ exports.run = async (client, msg, args, prefix) => { | ... | @@ -300,8 +302,9 @@ exports.run = async (client, msg, args, prefix) => { |
300 | 302 | ||
301 | exports.config = { | 303 | exports.config = { |
302 | name: '문구', | 304 | name: '문구', |
305 | + | ||
303 | aliases: ['문구류', '가격비교', 'stationery', 'search'], | 306 | aliases: ['문구류', '가격비교', 'stationery', 'search'], |
304 | - category: ['stationery'], | 307 | + category: ['Stationery'], |
305 | des: ['채팅 내용에 대한 검색결과를 보여줍니다.'], | 308 | des: ['채팅 내용에 대한 검색결과를 보여줍니다.'], |
306 | use: ['!문구 <채팅>'] | 309 | use: ['!문구 <채팅>'] |
307 | }; | 310 | }; |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -11,7 +11,7 @@ client.once('ready', () => { | ... | @@ -11,7 +11,7 @@ client.once('ready', () => { |
11 | 11 | ||
12 | client.commands = new Discord.Collection(); | 12 | client.commands = new Discord.Collection(); |
13 | client.aliases = new Discord.Collection(); | 13 | client.aliases = new Discord.Collection(); |
14 | -client.category = ['example', 'stationery', 'translate', 'ocr']; | 14 | +client.category = ['Help', 'Stationery', 'Translate', 'Ocr']; |
15 | 15 | ||
16 | fs.readdirSync("./Commands/").forEach(dir => { | 16 | fs.readdirSync("./Commands/").forEach(dir => { |
17 | const Filter = fs.readdirSync(`./Commands/${dir}`).filter(f => f.endsWith(".js")); | 17 | const Filter = fs.readdirSync(`./Commands/${dir}`).filter(f => f.endsWith(".js")); | ... | ... |
-
Please register or login to post a comment