เดจเต‹เดทเดจเตเด‚ เดชเตˆเดคเตเดคเดฃเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เดนเต‹เด‚ เดฒเตˆเดฌเตเดฐเดฑเดฟ เด‰เดฃเตเดŸเดพเด•เตเด•เตเดจเตเดจเต

เดŽเดจเตเดฑเต† เด‡เดฒเด•เตเดŸเตเดฐเต‹เดฃเดฟเด•เต เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเดฟเตฝ เดŽเด™เตเด™เดจเต† เดฎเดฟเด•เดšเตเดš เดฐเต€เดคเดฟเดฏเดฟเตฝ เดชเตเดธเตเดคเด•เด™เตเด™เตพ เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเดพเด‚ เดŽเดจเตเดจเดคเดฟเตฝ เดŽเดจเดฟเด•เตเด•เต เดŽเดชเตเดชเต‹เดดเตเด‚ เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดฃเตเดŸเต. เด…เดตเดธเดพเดจเด‚, เดชเต‡เดœเตเด•เดณเตเดŸเต†เดฏเตเด‚ เดฎเดฑเตเดฑเต เด—เตเดฃเด™เตเด™เดณเตเดŸเต†เดฏเตเด‚ เดŽเดฃเตเดฃเดคเตเดคเดฟเดจเตเดฑเต† เดฏเดพเดจเตเดคเตเดฐเดฟเด• เด•เดฃเด•เตเด•เตเด•เต‚เดŸเตเดŸเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดพเดฃเต เดžเดพเตป เดˆ เด“เดชเตเดทเดจเดฟเดฒเต‡เด•เตเด•เต เดตเดจเตเดจเดคเต. เดชเต‚เดšเตเดšเดฏเตเด•เตเด•เต เด•เต€เดดเดฟเดฒเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดคเดพเตฝเดชเตเดชเดฐเตเดฏเด•เตเด•เดพเดฐเต‹เดŸเตเด‚ เดžเดพเตป เดšเต‹เดฆเดฟเด•เตเด•เตเดจเตเดจเต.

เดญเดพเด—เด‚ 1. เดกเตเดฐเต‹เดชเตเดชเตเดฌเต‹เด•เตเดธเต

เดŽเดจเตเดฑเต† เดŽเดฒเตเดฒเดพ เดชเตเดธเตเดคเด•เด™เตเด™เดณเตเด‚ เดกเตเดฐเต‹เดชเตเดชเตเดฌเต‹เด•เตเดธเดฟเดฒเดพเดฃเต. เดžเดพเตป เดŽเดฒเตเดฒเดพเด‚ เดตเดฟเดญเดœเดฟเดšเตเดš 4 เดตเดฟเดญเดพเด—เด™เตเด™เดณเตเดฃเตเดŸเต: เดชเดพเด เดชเตเดธเตเดคเด•เด‚, เดฑเดซเดฑเตปเดธเต, เดซเดฟเด•เตเดทเตป, เดจเต‹เตบ-เดซเดฟเด•เตเดทเตป. เดชเด•เตเดทเต‡ เดžเดพเตป เดฑเดซเดฑเตปเดธเต เดชเตเดธเตเดคเด•เด™เตเด™เตพ เดฎเต‡เดถเดฏเดฟเตฝ เดšเต‡เตผเด•เตเด•เดพเดฑเดฟเดฒเตเดฒ.

เดฎเดฟเด•เตเด• เดชเตเดธเตเดคเด•เด™เตเด™เดณเตเด‚ .epub เด†เดฃเต, เดฌเดพเด•เตเด•เดฟเดฏเตเดณเตเดณเดต .pdf เด†เดฃเต. เด…เดคเดพเดฏเดคเต, เด…เดจเตเดคเดฟเดฎ เดชเดฐเดฟเดนเดพเดฐเด‚ เดŽเด™เตเด™เดจเต†เดฏเต†เด™เตเด•เดฟเดฒเตเด‚ เดฐเดฃเตเดŸเต เด“เดชเตเดทเดจเตเด•เดณเตเด‚ เด‰เตพเด•เตเด•เตŠเดณเตเดณเดฃเด‚.

เดชเตเดธเตเดคเด•เด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดŽเดจเตเดฑเต† เดตเดดเดฟเด•เตพ เด‡เดคเตเดชเต‹เดฒเต†เดฏเดพเดฃเต:

/ะšะฝะธะณะธ/ะะตั…ัƒะดะพะถะตัั‚ะฒะตะฝะฝะพะต/ะะพะฒะพะต/ะ”ะธะทะฐะนะฝ/ะฎั€ะธะน ะ“ะพั€ะดะพะฝ/ะšะฝะธะณะฐ ะฟั€ะพ ะฑัƒะบะฒั‹ ะพั‚ ะ ะดะพ ะฏ.epub 

เดชเตเดธเตเดคเด•เด‚ เดซเดฟเด•เตเดทเตป เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดตเดฟเดญเดพเด—เด‚ (เด…เดคเดพเดฏเดคเต, เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เด•เต‡เดธเดฟเตฝ "เดกเดฟเดธเตˆเตป") เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเด‚.

เดซเต‹เตพเดกเตผ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด…เดตเดฐเตเดŸเต† เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เด‰เดณเตเดณเดคเดฟเดจเดพเตฝ, เดกเตเดฐเต‹เดชเตเดชเตเดฌเต‹เด•เตเดธเต API-เดฏเต† เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒเต†เดจเตเดจเต เดžเดพเตป เดคเต€เดฐเตเดฎเดพเดจเดฟเดšเตเดšเต. เด…เดคเดพเดฏเดคเต, เดชเตเดฒเดพเตป เด‡เดคเดพเดฃเต: เดžเด™เตเด™เตพ เดซเต‹เตพเดกเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดธเตโ€Œเดคเด•เด™เตเด™เตพ เดŽเดŸเตเด•เตเด•เตเดจเตเดจเต, เด“เดฐเต‹ เดฌเตเด•เตเด•เตเด‚ เด’เดฐเต เดตเต‡เดกเต เด•เต—เดฃเตเดŸเดฑเดฟเดฒเต‚เดŸเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•, เด…เดคเต เดจเต‹เดทเดจเดฟเตฝ เดšเต‡เตผเด•เตเด•เตเด•.

เดญเดพเด—เด‚ 2. เด’เดฐเต เดตเดฐเดฟ เดšเต‡เตผเด•เตเด•เตเด•

เดฎเต‡เดถ เดคเดจเตเดจเต† เด‡เดคเตเดชเต‹เดฒเต†เดฏเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚. เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด•: เดจเดฟเดฐเดฏเตเดŸเต† เดชเต‡เดฐเตเด•เตพ เดฒเดพเดฑเตเดฑเดฟเดจเดฟเตฝ เด‰เดฃเตเดŸเดพเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต.

เดจเต‹เดทเดจเตเด‚ เดชเตˆเดคเตเดคเดฃเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เดนเต‹เด‚ เดฒเตˆเดฌเตเดฐเดฑเดฟ เด‰เดฃเตเดŸเดพเด•เตเด•เตเดจเตเดจเต

เด”เดฆเตเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดคเต เด‡เดคเตเดตเดฐเต† เดกเต†เดฒเดฟเดตเตผ เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเดฟเดฒเตเดฒเดพเดคเตเดคเดคเดฟเดจเดพเตฝ เดžเด™เตเด™เตพ เด…เดจเต—เดฆเตเดฏเต‹เด—เดฟเด• เดงเดพเดฐเดฃ API เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚.

เดจเต‹เดทเดจเตเด‚ เดชเตˆเดคเตเดคเดฃเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เดนเต‹เด‚ เดฒเตˆเดฌเตเดฐเดฑเดฟ เด‰เดฃเตเดŸเดพเด•เตเด•เตเดจเตเดจเต

เดจเต‹เดŸเตเดŸเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด•, Ctrl + Shift + J เด…เดฎเตผเดคเตเดคเตเด•, Application -> Cookies เดŽเดจเตเดจเดคเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด•, token_v2 เดชเด•เตผเดคเตเดคเดฟ เด…เดคเดฟเดจเต† TOKEN เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเด•. เดคเตเดŸเตผเดจเตเดจเต เดฒเตˆเดฌเตเดฐเดฑเดฟ เดšเดฟเดนเตเดจเดฎเตเดณเตเดณ เดจเดฎเตเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดชเต‡เดœเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เดฏเดฟ เดฒเดฟเด™เตเด•เต เดชเด•เตผเดคเตเดคเตเด•. เดžเด™เตเด™เตพ เด…เดคเดฟเดจเต† NOTION เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต.

เด…เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เดจเต‹เดทเดจเดฟเดฒเต‡เด•เตเด•เต เด•เดฃเด•เตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเดพเตป เด•เต‹เดกเต เดŽเดดเตเดคเตเดจเตเดจเต.

database = client.get_collection_view(NOTION)
current_rows = database.default_query().execute()

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดชเดŸเตเดŸเดฟเด•เดฏเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เดตเดฐเดฟ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดจเดฎเตเด•เตเด•เต เด’เดฐเต เดซเด‚เด—เตเดทเตป เดŽเดดเตเดคเดพเด‚.

def add_row(path, file, words_count, pages_count, hours):
    row = database.collection.add_row()
    row.title = file

    tags = path.split("/")

    if len(tags) >= 1:
        row.what = tags[0]

    if len(tags) >= 2:
        row.state = tags[1]

    if len(tags) >= 3:
        if tags[0] == "ะฅัƒะดะพะถะตัั‚ะฒะตะฝะฝะพะต":
            row.author = tags[2]

        elif tags[0] == "ะะตั…ัƒะดะพะถะตัั‚ะฒะตะฝะฝะพะต":
            row.tags = tags[2]

        elif tags[0] == "ะฃั‡ะตะฑะฝะธะบะธ":
            row.tags = tags[2]

    if len(tags) >= 4:
        row.author = tags[3]

    row.hours = hours
    row.pages = pages_count
    row.words = words_count

เดŽเดจเตเดคเดพเดฃเต เด‡เดตเดฟเดŸเต† เดจเดŸเด•เตเด•เตเดจเตเดจเดคเต. เด†เดฆเตเดฏ เดตเดฐเดฟเดฏเดฟเดฒเต† เดชเดŸเตเดŸเดฟเด•เดฏเดฟเดฒเต‡เด•เตเด•เต เดžเด™เตเด™เตพ เด’เดฐเต เดชเตเดคเดฟเดฏ เดตเดฐเดฟ เดŽเดŸเตเด•เตเด•เตเด•เดฏเตเด‚ เดšเต‡เตผเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, "/" เดŽเดจเตเดจเดคเดฟเดจเตŠเดชเตเดชเด‚ เดžเด™เตเด™เดณเตเดŸเต† เดชเดพเดค เดตเดฟเดญเดœเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดŸเดพเด—เตเด•เตพ เดจเต‡เดŸเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดŸเดพเด—เตเด•เตพ - "เด†เตผเดŸเตเดŸเต", "เดกเดฟเดธเตˆเตป", เด†เดฐเดพเดฃเต เดฐเดšเดฏเดฟเดคเดพเดตเต, เดคเตเดŸเด™เตเด™เดฟเดฏเดต. เด…เดคเดฟเดจเตเดถเต‡เดทเด‚ เดžเด™เตเด™เตพ เดชเตเดฒเต‡เดฑเตเดฑเดฟเดจเตเดฑเต† เด†เดตเดถเตเดฏเดฎเดพเดฏ เดŽเดฒเตเดฒเดพ เดซเต€เตฝเดกเตเด•เดณเตเด‚ เดธเดœเตเดœเดฎเดพเด•เตเด•เดฟ.

เดญเดพเด—เด‚ 3. เดตเดพเด•เตเด•เตเด•เดณเตเด‚ เดฎเดฃเดฟเด•เตเด•เต‚เดฑเตเด•เดณเตเด‚ เดฎเดฑเตเดฑเต เด†เดจเดจเตเดฆเด™เตเด™เดณเตเด‚ เดŽเดฃเตเดฃเตเดจเตเดจเต

เด‡เดคเต เด•เต‚เดŸเตเดคเตฝ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเดณเตเดณ เดœเต‹เดฒเดฟเดฏเดพเดฃเต. เดžเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดžเด™เตเด™เตพเด•เตเด•เต เดฐเดฃเตเดŸเต เดซเต‹เตผเดฎเดพเดฑเตเดฑเตเด•เดณเตเดฃเตเดŸเต: epub, pdf. เดŽเดชเดฌเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเดฒเตเดฒเดพเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเดฃเต†เด™เตเด•เดฟเตฝ - เดตเดพเด•เตเด•เตเด•เตพ เด’เดฐเตเดชเด•เตเดทเต‡ เด…เดตเดฟเดŸเต†เดฏเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดชเดฟเดกเดฟเดŽเดซเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดŽเดฒเตเดฒเดพเด‚ เด…เดคเตเดฐ เดตเตเดฏเด•เตเดคเดฎเดฒเตเดฒ: เด…เดคเดฟเตฝ เด’เดŸเตเดŸเดฟเดšเตเดš เดšเดฟเดคเตเดฐเด™เตเด™เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚.

เด…เดคเดฟเดจเดพเตฝ PDF-เตฝ เดตเดพเด•เตเด•เตเด•เตพ เดŽเดฃเตเดฃเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดžเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด‡เดคเตเดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเด‚: เดžเด™เตเด™เตพ เดชเต‡เดœเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดŽเดŸเตเดคเตเดคเต เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดธเตเดฅเดฟเดฐเดพเด™เตเด•เด‚ เด•เตŠเดฃเตเดŸเต เด—เตเดฃเดฟเด•เตเด•เตเด• (เด’เดฐเต เดชเต‡เดœเดฟเดจเต เดถเดฐเดพเดถเดฐเดฟ เดตเดพเด•เตเด•เตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚).

เด‡เดคเดพ เด…เดตเตพ:

def get_words_count(pages_number):
    return pages_number * WORDS_PER_PAGE

A4 เดชเต‡เดœเดฟเดจเตเดณเตเดณ เดˆ WORDS_PER_PAGE เดเด•เดฆเต‡เดถเด‚ 300 เด†เดฃเต.

เด‡เดชเตเดชเต‹เตพ เดชเต‡เดœเตเด•เตพ เดŽเดฃเตเดฃเดพเตป เด’เดฐเต เดซเด‚เด—เตเดทเตป เดŽเดดเตเดคเดพเด‚. เดžเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚ pyPDF2.

def get_pdf_pages_number(path, filename):
    pdf = PdfFileReader(open(os.path.join(path, filename), 'rb'))
    return pdf.getNumPages()

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, Epub-เตฝ เดชเต‡เดœเตเด•เตพ เดŽเดฃเตเดฃเตเดจเตเดจเดคเดฟเดจเต เดžเด™เตเด™เตพ เด’เดฐเต เด•เดพเดฐเตเดฏเด‚ เดŽเดดเตเดคเดพเด‚. เดžเด™เตเด™เตพ เด‰เดชเดฏเต‡เดพเด—เดฟเด•เตเด•เตเดจเตเดจเต epub_converter. เด‡เดตเดฟเดŸเต† เดจเดฎเตเดฎเตพ เดชเตเดธเตเดคเด•เด‚ เดŽเดŸเตเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเดจเต† เดตเดฐเดฟเด•เดณเดพเดฏเดฟ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเด•, เด“เดฐเต‹ เดตเดฐเดฟเดฏเตเดŸเต†เดฏเตเด‚ เดตเดพเด•เตเด•เตเด•เตพ เดŽเดฃเตเดฃเตเด•.

def get_epub_pages_number(path, filename):
    book = open_book(os.path.join(path, filename))
    lines = convert_epub_to_lines(book)
    words_count = 0

    for line in lines:
        words_count += len(line.split(" "))

    return round(words_count / WORDS_PER_PAGE)

เด‡เดจเดฟ เดจเดฎเตเด•เตเด•เต เดธเดฎเดฏเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เดพเด‚. เดžเด™เตเด™เตพ เดžเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเดฟเดฏเดชเตเดชเต†เดŸเตเดŸ เดชเดฆเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดŽเดŸเตเดคเตเดคเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดตเดพเดฏเดจเดพ เดตเต‡เด—เดคเดฏเดพเตฝ เดตเดฟเดญเดœเดฟเด•เตเด•เตเดจเตเดจเต.

def get_reading_time(words_count):
    return round(((words_count / WORDS_PER_MINUTE) / 60) * 10) / 10

เดญเดพเด—เด‚ 4. เดŽเดฒเตเดฒเดพ เดญเดพเด—เด™เตเด™เดณเตเด‚ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต

เดจเดฎเตเดฎเตเดŸเต† เดชเตเดธเตเดคเด•เด™เตเด™เดณเตเดŸเต† เดซเต‹เตพเดกเดฑเดฟเตฝ เดธเดพเดงเตเดฏเดฎเดพเดฏ เดŽเดฒเตเดฒเดพ เดตเดดเดฟเด•เดณเดฟเดฒเต‚เดŸเต†เดฏเตเด‚ เดชเต‹เด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดจเต‹เดŸเตเดŸเดฟเตฝ เด‡เดคเดฟเดจเด•เด‚ เด’เดฐเต เดชเตเดธเตเดคเด•เด‚ เด‰เดฃเตเดŸเต‹เดฏเต†เดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด•: เด‰เดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดžเด™เตเด™เตพ เด‡เดจเดฟ เด’เดฐเต เดฒเตˆเตป เดธเตƒเดทเตเดŸเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ.
เด…เดชเตเดชเต‹เตพ เดจเดฎเตเดฎเตพ เดซเดฏเตฝ เดคเดฐเด‚ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด‡เดคเดฟเดจเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเต, เดตเดพเด•เตเด•เตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดŽเดฃเตเดฃเตเด•. เด…เดตเดธเดพเดจเด‚ เด’เดฐเต เดชเตเดธเตเดคเด•เด‚ เดšเต‡เตผเด•เตเด•เตเด•.

เดžเด™เตเด™เตพเด•เตเด•เต เดฒเดญเดฟเด•เตเด•เตเดจเตเดจ เด•เต‹เดกเต เด‡เดคเดพเดฃเต:

for root, subdirs, files in os.walk(BOOKS_DIR):
    if len(files) > 0 and check_for_excusion(root):
        for file in files:
            array = file.split(".")
            filetype = file.split(".")[len(array) - 1]
            filename = file.replace("." + filetype, "")
            local_root = root.replace(BOOKS_DIR, "")

            print("Dir: {}, file: {}".format(local_root, file))

            if not check_for_existence(filename):
                print("Dir: {}, file: {}".format(local_root, file))

                if filetype == "pdf":
                    count = get_pdf_pages_number(root, file)

                else:
                    count = get_epub_pages_number(root, file)

                words_count = get_words_count(count)
                hours = get_reading_time(words_count)
                print("Pages: {}, Words: {}, Hours: {}".format(count, words_count, hours))
                add_row(local_root, filename, words_count, count, hours)

เด’เดฐเต เดชเตเดธเตเดคเด•เด‚ เดšเต‡เตผเดคเตเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต‹ เดŽเดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด‡เดคเตเดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเต:

def check_for_existence(filename):
    for row in current_rows:
        if row.title in filename:
            return True

        elif filename in row.title:
            return True

    return False

เดคเต€เดฐเตเดฎเดพเดจเด‚

เดˆ เดฒเต‡เด–เดจเด‚ เดตเดพเดฏเดฟเดšเตเดš เดŽเดฒเตเดฒเดพเดตเตผเด•เตเด•เตเด‚ เดจเดจเตเดฆเดฟ. เด•เต‚เดŸเตเดคเตฝ เดตเดพเดฏเดฟเด•เตเด•เดพเตป เด‡เดคเต เดจเดฟเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเดฎเต†เดจเตเดจเต เดžเดพเตป เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต :)

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•