ai ์๊ฒ ๋จน์ผ ๋ฐ์ดํฐ๋ฅผ ์๋ฆฌ์ค์ด๋ค.
๊ฐ์ง๊ณ ์๋ epub๋ค์ด ์กฐ๊ธ ์๋๋ฐ ์ด๋๋ก๋ ๋จน์ผ ์ ์์ผ๋ ๋ชจ๋ text๋ก ๋ฐ๊ฟ๋์ผํ๋ค.
๊ทธ๋ฐ๋ฐ ์๊ฐ๋ณด๋ค ์๋ฃ๊ฐ ์์๋ค.
ํนํ ํ๊ธ๋ค์ด ๋ชจ๋ ๊นจ์ ธ๋์๋ค.
calibre๋ฅผ ์ถ์ฒํ๊ธฐ์ ์ค์นํ convert ํด๋ดค๋๋ ์ถ๋ ฅ ํด๋๋ฅผ ์ ํํ ์ ์์ด ์ด๊ฒ๋ ๋ง์ฐฌ๊ฐ์ง๋ก ๊ฝค๋ ๊ท์ฐฎ์ ์์
์ด์๋ค - ํ์ง๋ง ํ์ด์ฌ์ผ๋ก ๋๋ด ์คํจํ๋ค๋ฉด ์ด๋ ๊ฒ๋ผ๋ ์์
ํ ํ txtํ์ผ๋ค์ ๋ชจ๋ ์ฐพ์ ํ๋ฒ์ ๋ชจ์ผ๋ ์ฝ๋๋ฅผ ๋ง๋ค ์์ ์ด์๋ค.. ์ง๋ง ํ์ด์ฌ์ผ๋ก ํด๊ฒฐํ๋ค.
๋จผ์ EbookLib๋ฅผ ์ค์นํ๋ค
1. pip install EbookLib
https://pypi.org/project/EbookLib/
- doc ๋ ์ดํด๋ณด์. ๊ทผ๋ฐ ์ข ๋ถ์กฑํ๋ค
https://docs.sourcefabric.org/projects/ebooklib/en/latest/tutorial.html#introduction
2. This is codes
import ebooklib
from ebooklib import epub
from bs4 import BeautifulSoup
book = epub.read_epub('./tear.epub')
result = book.get_metadata('DC', 'language') # ์ด๋ค ์ธ์ด๋ก ๋์ด ์๋์ง ํ์ธํ ์ ์๋ค
for idx, doc in enumerate(book.get_items_of_type(ebooklib.ITEM_DOCUMENT)):
book = doc.content
soup = BeautifulSoup(book, 'html.parser')
soup = soup.select('p')
for pTag in soup:
print(pTag.text)
3. ์๋ง์ ์ต์ ์ ์ฐพ๋๋ฐ ๊ณ ์์ ์ข ํ๋ค.
- ํ๊ธ ๋ฌธ์ ์ ๊ฒฝ์ฐ stackoverflow๋ ํฐ ๋์์ด ๋์ง ์๋๋ค. ๊ทธ๋ฆฌ๊ณ ํ๊ธ ๋ฌธ์ ๋ ์๋์๋ค.
- idx๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด enumerate๋ฅผ ์ผ์ง๋ง ์ด ๊ฒฝ์ฐ ๋ฒ์ฉ์ฑ์ด ๋จ์ด์ ธ ๊ทธ๋ฅ doc๋ง ์ฌ์ฉํ๋ค. ์ฑ ์ ํน์ ์ ๋ณด๋ง ๋ฝ์์ ์ฒ๋ฆฌํ๊ณ ์ถ๋ค๋ฉด ์ฐ๋ ๊ฒ๋ ์ข๊ฒ ๋ค.
4. ์ฑ
์ ๋ชฉ์ book.get_metadata('DC', 'title') ์ด๋ ๊ฒ ๊ฐ์ ธ์ฌ ์ ์๋ค.
- ์ด๊ฑธ๋ก ํ์ผ๋ช ์ ๋ง๋ค์ด ํด๋ ํ๋์ ์ ์ฅํ๋ฉด ๋ชจ๋ epubํ์ผ์ ํ๋ฒ์ txt๋ก ๋ง๋ค์ ์๊ฒ ๋ค.
'๊ทธ ๋ฐ์ AI > ๋ฐ์ดํฐ ์ค๋นํ๊ธฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Crawling] ip์ฐํํด ํฌ๋กค๋งํ๊ธฐ ver. ํจ์ฝ (1) | 2023.07.05 |
---|---|
[Crawling] ๊ตฌ๊ธ ๋ก๊ทธ์ธ ํ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ ver. Headless (0) | 2023.06.21 |
[Crawling] ๊ตฌ๊ธ ๋ก๊ทธ์ธํ๊ณ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ - ๋ก๋ผ ์ด๋ฏธ์ง ์์ง (0) | 2023.06.20 |
[Crawling] ๋ค์ด๋ฒ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ - ๋ก๋ผ ์ด๋ฏธ์ง ์์ง (11) | 2023.06.19 |
๊ธฐ์์ฒญ ์ง์ง ์ ๋ณด ํฌ๋กค๋ง (0) | 2017.12.01 |