mercredi 3 février 2016

How to run Python scirpt making a file

   #!/usr/bin/env python3

    # Script to convert HTML files provided by The Online Plain Text English
    # Dictionary (http://ift.tt/1oBTnCq) into SQLite          database

    import sys
    import sqlite3
    from argparse import ArgumentParser, FileType
     from bs4 import BeautifulSoup

   def parse_args():
    parser = ArgumentParser("Create database from HTML dictionary pages")
    parser.add_argument("files", metavar="file", nargs="+",  type=FileType("rb"))
    parser.add_argument("--out", "-o", required=True)
    return parser.parse_args()

   def create_tables(conn):
  conn.execute("DROP TABLE IF EXISTS words")
  conn.execute("CREATE TABLE words (id integer primary key, word text,               description text)")
conn.commit()

def words(handle):
doc = BeautifulSoup(handle)
for p in doc.find_all("p"):
    if len(p.contents) == 4:
        word = p.contents[0].string.lower()
        definition = p.contents[3].lstrip(") ").replace("\n", " ")
        yield word, definition

def insert_words(conn, iter):
  conn.executemany("INSERT INTO words VALUES (NULL, ?, ?)", iter)

def main():
args = parse_args()
db = sqlite3.connect(args.out)
create_tables(db)
for handle in args.files:
    print("Processing \"{}\"".format(handle.name), file=sys.stderr)
    insert_words(db, words(handle))
    db.commit()
db.close()

if __name__ == "__main__":
main()

i tried python my_script.py

but it shows this:

usage: Create database from HTML dictionary pages [-h] --out OUT file [file ...] Create database from HTML dictionary pages: error: the following arguments are r equired: file, --out/-o

i dont use python. i just want to run this script and sorry for bad presentation of code I am new at this.

Aucun commentaire:

Enregistrer un commentaire