Bootstrap

python期末报告总结

python期末大报告做了接近两天,结果却不是很好,写个报告总结一下

一.技术总结

我实现的是一个网络读书网站的书籍下载和书籍阅读系统

目标是上面的世界名著模块:365读书人网站上的世界名著模块

书籍的下载用的是多线程爬虫,书籍阅读界面是用GUI完成了一个记事本,登录界面连接数据库进行判断

下面是实现的代码:

import tkinter
import pymysql
import re
import threading
import requests
import tkinter.filedialog
import tkinter.messagebox
import os
import codecs
import chardet
import time



global user_et, psw_et, rd_win, text, filename, lg_win, book_url, book_title
roort_cate = [' ', '世界名著']

def wr():
    wr_tk = tkinter.Tk()
    wr_tk.title("Error")
    wr_tk.geometry("250x125+750+400")
    wr_lb = tkinter.Label(wr_tk, text="不存在该用户或者密码错误", font=("宋体", 10))
    wr_lb.place(x=50, y=60, width=150, height=20)
    wr_tk.mainloop()

def reg():
    conn = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='read', charset='utf8')
    cursor = conn.cursor()
    us_nm = user_et.get()
    psw = psw_et.get()
    sql = "insert into user(user_name, password) values('%s', '%s')" %(us_nm, psw)
    print(sql)
    cursor.execute(sql)
    conn.commit()
    cursor.close()
    conn.close()

def log():
    conn = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='read', charset='utf8')
    cursor = conn.cursor()
    us_nm = user_et.get()
    psw = psw_et.get()
    sql = "select * from user where user_name = '%s' and password = '%s'" %(us_nm, psw)
    print(sql)
    cursor.execute(sql)
    count = cursor.rowcount
    print(count)
    if count == 1:
        interface()
    else:
        wr()
    cursor.close()
    conn.close()

def find_chinese(file):
    pattern = re.compile(r'[^\u4e00-\u9fa5]')
    chinese = re.sub(pattern, '', file)
    return chinese

l=threading.Lock()
def wt(url, fpath):
    l.acquire()
    time.sleep(0.001)
    headers = {"user-agent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"}
    response = requests.get(url, headers=headers)
    response.encoding = 'gb2312'
    html = response.text
    #print(html)
    content = re.findall(r'</DIV>(.*?)<!--/HTMLBUILERPART0-->', html, re.S)[0]
    #content = re.findall(r'</DIV>(.*?)', content, re.S)[0]
    #content = clean(content)
    #content = find_chinese(content)

    content = content.replace('<BR>', '')
    content &

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;