Python实现电子词典(web)

思路:

  准备配置文件setting.py,运行src/data.py,使用MySQL新建数据库并创建table,将字典数据导入到table中。编写server.py文件,建立服务端,循环接收web请求,使用多线程实现并发,解析请求(request),并返回响应(response)。未完善,只实现了基本的客户端发起请求——>服务端解析请求——>数据库信息获取——>服务端返回响应——>客户端显示结果。

代码结构:

.
├── log
├── server.py
├── src
│   ├── data.py
│   ├── dic.csv
│   └── settings.py
├── static
│   ├── css
│   │   └── index.css
│   └── favicon.ico 
└── templates
  └── index.html

详细代码:

  src目录下:

# settings.py

# MySQL配置
host = 'localhost'
user = 'root'
password = '******'  # 你的mysql密码

# socket配置
HOST = '0.0.0.0'
PORT = 5566
ADDR = HOST, PORT
n = 5
buffersize = 1024

# 模板位置
TEMPLATES_DIR = 'templates'
STATIC_DIR = 'static'
settings.py
#!/usr/bin/env python
# data.py

'''
data.py
    使用MySQL,创建表,导入数据
'''

import pymysql
from settings import *

# 连接到MySQL数据库,并创建cursor游标对象
db = pymysql.connect(host=host, user=user, password=password)
cursor = db.cursor()

# 创建数据库,名为dictionary并使用
cursor.execute('create database dictionary;')
cursor.execute('use dictionary;')

# 创建userinfo表,包含id,name,password字段
cursor.execute('''
    create table userinfo(
        id int primary key auto_increment, 
        name varchar(20), 
        password varchar(20));
    ''')

# 创建dictionary表,包含id,word,meaings字段
cursor.execute('''
    create table dictionary(
        id int primary key not null auto_increment,
        word varchar(50), 
        meanings text);
    ''')

# 创建history表,包含id,name,word,time字段
cursor.execute('''
    create table history(
        id int primary key auto_increment,
        name varchar(20),
        word varchar(50), 
        time char(24));
    ''') 

# 将"/var/lib/mysql-files/dic.csv"导入到dictionary表中的(word, meanings)字段中
cursor.execute('''
    load data infile "/var/lib/mysql-files/dic.csv" 
        into table dictionary 
        fields terminated by ":" 
        lines terminated by "\n" 
        (word, meanings);
    ''') 

db.commit()        # 提交数据库
cursor.close()    # 关闭游标对象
db.close()        # 关闭数据库对象
data.py
abbreviation:n.节略,缩写,缩短
abide:vt.忍受
abolish:vt.废除,取消
absent:a.不在意的
absorption:n.吸收;专注
abstract:n.抽象
absurd:a.不合理的,荒唐的
abundance:n.丰富,充裕
accessory:a.附属的
accord:n.调和,符合;协议
acknowledge:vt.承认;告知收到
acquaint:vt.使认识,使了解
action:n.作用;情节
adhere:vi.粘附;追随;坚持
adjacent:a.毗连的;紧接着的
adjoin:vt.贴近,毗连;靠近
adjustable:a.可调整的,可校准的
administration:n.局(或署、处等)
admiration:n.钦佩;赞美,羡慕
adoption:n.收养;采纳,采取
adore:vt.崇拜;很喜欢
advantageous:a.有利的,有助的
advertise:vi.登广告
advocate:vt.拥护
aerial:a.空气的;航空的
aerospace:n.航空和宇宙航行空间
affirm:vt.断言,批准;证实
agitation:n.鼓动,煸动;搅动
agreeable:a.惬意的;同意的
alas:int.唉,哎呀
album:n.粘贴簿;相册;文选
alert:a.警惕的;活跃的
algebra:n.代数学
alien:n.外国人
alignment:n.队列;结盟,联合
allied:a.联合的;联姻的
allowance:n津贴,补助费
alongside:prep.在…旁边
ally:n.盟国,同盟者,伙伴
alteration:n.变更,改变;蚀变
alternate:a.交替的
amateur:a.业余的n.业余爱好者
ambassador:n.大使,使节
ambient:a.周围的,包围着的
ambiguous:a.模棱两可的;分歧的
ambitious:a.有雄心的;热望的
ample:a.足够的;宽敞的
amplitude:n.广大;充足;振幅
amusement:n.娱乐,消遣,乐趣
analogue:n.类似物;同源语
analogy:n.相似,类似;比拟
analytic(al):a.分析的;分解的
anniversary:n.周年纪念日
announce:vt.报告…的来到
annually:ad.年年,每年
anode:n.阳极,正极,板极
answer:vi.符合,适合
antarctic:n.南极区
antenna:n.触角;天线
antique:n.古物
anybody:n.重要人物
apparent:a.显然的
appendix:n.附录,附属物;阑尾
applaud:vt.喝彩;欢呼vi.欢呼
applause:n.喝彩;夸奖,称赞
appreciable:a.可估价的;可察觉的
appreciation:n.欣赏;鉴别;感激
apt:a.恰当的;聪明的
arc:n.弧,弓形物;弧光
arch:vt.用拱连接
architect:n.建筑师;创造者
arctic:n.北极
array:n.队列;排列
ascend:vi.攀登,登高;追溯
ascertain:vt.查明,确定,弄清
ascribe:vt.把…归于
ashore:ad.在岸上,上岸
ass:n.驴;傻瓜,蠢笨的人
assassinate:vt.暗杀,行刺;中伤
assault:n.攻击
assert:vt.断言,宣称;维护
assessment:n.估定;查定;估计数
assumption:n.采取;假定;傲慢
assurance:n.保证;财产转让书
astonishment:n.惊奇,惊讶
astronomy:n.天文学
atom:n.微粒;微量
attachment:n.连接物,附件;爱慕
attendance:n.到场;出席人数
attendant:n.侍者;护理人员
attorney:n.代理人;辩护律师
audience:n.正式会见;拜会
author:n.创造者,创始人
automate:vt.使自动化
avail:n.效用
availability:n.有效(性);可得性
aviation:n.飞行
awake:vi.认识到
awful:a.威严的;令人崇敬的
awkward:a.不雅观的
axial:a.轴的;轴向的
axis:n.轴,轴线;第二颈椎
axle:n.(轮)轴,车轴,心棒
baby:n.一家中年龄最小的人
bachelor:n.未婚男子;学士
bacon:n.咸猪肉,熏猪肉
bacterium:n.细菌;拳击迷
badge:n.徽章,像章;标志
baffle:n.迷惑
bait:n.饵;引诱物
balcony:n.阳台;楼厅,楼座
bald:a.秃头的;无毛的
ballet:n.芭蕾舞;舞剧
bamboo:n.竹;竹杆,竹棍
bandage:n.绷带,包带
bandit:n.土匪,盗匪,歹徒
bank:vi.把钱存入银行
banker:n.银行家
bankrupt:vt.使破产
banquet:n.宴会,盛会,酒席
barely:ad.仅仅,勉强
barge:n.驳船;大型游船
barley:n.大麦
barometer:n.气压计,睛雨表
baron:n.男爵;贵族;巨商
barren:a.贫瘠的;不妊的
baseball:n.棒球;棒球运动
basement:n.地下室;地窖;底层
basin:n.内海;盆地,流域
battery:n.炮兵连;兵器群
battle:vt.与…作战
bazaar:n.集市,廉价商店
bead:n.有孔小珠;露珠
beam:vi.发光,发热;微笑
bearing:n.支承;忍受;方位
bed:n.河床,(湖)底,矿床
beetle:n.甲虫;近视眼的人
beforehand:ad.预先;提前地
bend:vi.屈从
bestow:vt.把…赠与
between:ad.当中,中间
beware:vt.&vi.谨防,当心
bewilder:vt.迷惑,把…弄糊涂
bid:vi.报价
bishop:n.(基督教的)主教
bitterness:n.苦味,辛酸,苦难
blacksmith:n.铁匠,锻工
blast:n.管乐器的声音
blaze:vi.燃烧
bleach:vi.变白
blind:n.百叶窗;窗帘;遮帘
block:n.阻塞;障碍物;炮闩
blond:n.白肤金发碧眼的人
blouse:n.女衬衫;童衫;罩衫
blue:a.伤心的;下流的
blunder:n.大错
blush:n.脸红
board:vt.(收费)供…膳食
body:n.物体;(液)体;实质
boiler:n.锅炉;热水贮槽
bore:n.讨厌的人;麻烦事
bound:a.应当的;必定的
bourgeois:a.资产阶级的;平庸的
box:n.专席
boycott:vt.&n.联合抵制
brace:vt.拉紧,撑牢
brand:vt.在…上打烙印
breakdown:n.崩溃,倒塌;失败
breakfast:vi.吃早餐
breed:n.(动物)品种
bribe:vt.向…行贿
bridegroom:n.新郎
bridge:vt.架桥于,用桥连接
bridle:vt.抑制
brightness:n.明亮,辉煌,聪明
broaden:vt.&vi.放宽,变阔
bronze:n.青铜色
brood:vt.沉思vi.郁闭地沉思
Buddhism:n.佛教,释教
budget:n.预算,预算案
buffalo:n.水牛;水陆坦克
bug:n.虫子;臭虫
bugle:n.军号,喇叭
bull:n.买空的证券投机商
bulletin:告示,公告,公报
bump:n.肿块
bureaucracy:n.官僚主义;官僚机构
burglar:n.夜盗,窃贼
burial:n.安葬,埋葬,埋藏
burner:n.灯头,煤气头
bushel:n.蒲式耳(容量单位)
butt:n.大酒桶,桶
buzz:vi.(蜂等)嗡嗡叫
bypass:vt.绕过
by-product:n.副产品
cable:n.海底电报
calculus:n.微积分;结石
calibration:n.校准;标定,刻度
can:vt.装罐头
cane:n.(藤等)茎;手杖
cancel:vt.删去,勾销,取消
capability:n.能力,才能;性能
capacitance:n.电容,电容量
capacitor:n.电容器
cape:n.披肩,斗篷;海角
captive:a.被俘虏的;被迷住的
carry:vt.刊登
cartoon:n.漫画,动画片
cartridge:n.弹药筒,子弹;软片
catalogue:vt.为…编目录
catalyst:n.催化剂;刺激因素
category:n.种类,类目;范畴
cater:vi.迎合,投合
Catholic:a.天主教的n.天主教徒
caution:vt.警告
cautious:a.小心的,谨慎的
cavity:n.洞,穴,空腔
cement:vi.粘紧
censor:vt.审查,检查
cereal:n.谷类,五谷,禾谷
certainty:n.确实性,确信,确实
challenge:n.艰巨任务;要求回避
champion:n.斗士;提倡者
characterize:vt.表示…的特性
charcoal:n.炭,木炭;生物炭
charge:vt.装满
charm:vi.迷人
charter:n.宪章;契据
chatter:vi.&n.喋喋不休
cheat:n.欺诈;骗取
check:n.支票,帐单
cherish:vt.珍爱;怀有(感情)
chestnut:n.栗子;栗树;栗色
chill:vi.感到寒冷;冷淬
chip:n.薄片,碎片
choice:a.优等的
chop:n.一块排骨,肉块
chord:vi.协调
chorus:vt.&vi.合唱
Christ:n.救世主(耶稣基督)
Christian:a.基督教的
cigar:n.雪茄烟,叶卷烟
circular:n.传单,通报,通函
circulation:n.循环;(货币等)流通
circus:n.马戏;马戏团
cite:vt.引用,引证;举例
civilian:a.平民的
claim:n.权利,所有权
clamp:vt.夹住,夹紧
clap:n.拍手喝采声;霹雳声
clash:n.碰撞声;抵触,冲突
clasp:vt.扣住,扣紧,钩住
classic:a.不朽的
clatter:n.得得声,卡嗒声
cleanliness:n.清洁
clearing:n.(森林中的)空旷地
client:n.顾客;诉讼委托人
climax:n.(兴趣的)顶点
cling:vi.粘住;依附;坚持
clinic:n.诊所,医务室;会诊
clip:n.夹子,钳子
clip:vt.剪;剪辑报刊
cloak:vt.掩盖,覆盖,掩饰
clockwise:a.&ad.顺时针方向转的
closet:n.小房间;壁碗橱
cloudy:a.混浊的;模糊不清的
clown:n.(马戏的)小丑,丑角
cluster:vt.使成群
clutch:vi.掌握,攫
coach:vt.辅导,指导,训练
cock:n.旋塞,开关,龙头
coefficient:n.协同因素;系数,率
coffin:n.棺材,柩
coherent:a.粘着的;紧凑的
coin:vt.铸造(硬币)
coincide:vi.相符合;相巧合
coke:vt.&vi.炼焦
collaborate:vi.协作,合作;协调
collide:vi.碰撞;冲突,抵触
colonial:a.殖民地的,殖民的
colonist:n.移民;殖民地居民
combat:vi.格斗
combustion:n.燃烧;氧化;骚动
comedy:n.喜剧;喜剧场面
commence:vi.获得学位
commend:vt.称赞,表扬;推荐
commission:n.委托,委任;委托状
commodity:n.日用品,商品,物品
commonplace:n.平常话
commonsense:a.有常识的
commonwealth:n.共和国;联邦
compact:vt.使紧凑
comparable:a.可比较的;类似的
compatible:a.一致的;兼容制的
compensate:vt.&vi.补偿,赔偿
compensation:n.补偿,赔偿,赔偿费
competitive:a.竞争的,比赛的
competitor:n.竞争者,敌手
complaint:n.疾病,病痛;主诉
complement:n.补足(物)
completion:n.完成,结束,完满
complexity:n.复杂(性)
complication:n.复杂,混乱;并发症
compliment:vt.赞美,祝贺
comply:vi.应允,遵照,照做
composer:n.作曲家;调停人
composite:n.合成物
composition:n.组成,构成,结构
comprehend:vt.了解,理解,领会
compression:n.压缩,压紧,浓缩
compulsory:a.强迫的,义务的
conceit:n.自负,自高自大
conceive:vt.设想,以为;怀孕
concentrate:vt.&vi.浓缩,提浓
conception:n.概念,观念,想法
concern:n.所关切的事;商行
concert:n.一齐,一致,协作
concession:n.让步,迁就
confidence:n.私房话,秘密,机密
confidential:a.秘密的;亲信的
confirmation:n.证实,确定;确认
conform:vi.一致
confront:vt.使面对;使对证
conqueror:n.征服者,胜利者
consciousness:n.意识,知觉,觉悟
consequence:n.重要(性),重大意义
consequent:a.作为结果的;必然的
conservative:a.有保存力的,防腐的
consistent:a.前后一致的,连贯的
console:n.悬臂,肘托;控制台
consolidate:vi.合并
constituent:n.选民
constitute:vt.构成,组成
constitution:n.(人的)体格,素质
constraint:n.强迫,结束;强制力
construction:n.结构;作图(法)
consul:n.领事
consumer:n.消费者,用户
consumption:n.消费(量),灭绝
contend:vt.坚决主张
context:n.上下文;来龙去脉
continental:a.大陆的,大陆性的
contradict:vt.反驳,否认
contrary:n.反对命题
contrast:vt.使对比vi.形成对比
controversy:n.争论,辩论,争吵
convention:n.公约,(换俘等)协定
convert:vt.转变,改变,变换
convey:vt.传达;传播;转让
conviction:n.确信,信服,深信
cooperative:n.合作社
coordinate:n.同等的人
correctly:ad.正确地,恰当地
correlate:n.互相关联的事物
correlation:n.相互关系;对射
correspondence:n.通信;符合;对应
corrosion:n.腐蚀,侵蚀;锈
corrupt:a.腐败的
cosmic:a.宇宙的;广大无边的
cosmos:n.宇宙;秩序,和谐
couch:n.睡椅,长沙发椅
counsel:n.商议;忠告;律师
count:n.起拆理由,罪状
counter:a.&ad.相反的(地)
courageous:a.勇敢的,无畏的
courteous:a.有礼貌的,谦恭的
courtesy:n.礼貌,谦恭,请安
coward:a.懦怯的,胆小的
crab:vi.捕蟹
crack:vi.&vt.发出爆裂声
cradle:n.摇篮,发源地
craft:n.技巧
crank:vi.转动曲柄
crash:vi.撞坏,摔坏,砸碎
credit:vt.&n.相信,信任
crisis:n.危机;转折点
crisp:a.脆的;卷曲的
criterion:n.标准,准则,尺度
crooked:a.弯的,歪的;畸形的
cross:a.易怒的;杂交的
cruelty:n.残酷;残酷行为
cruise:vt.巡航于…
cubic:a.立方体的;立方的
cuckoo:n.杜鹃,布谷鸟
curly:a.卷曲的;有卷毛的
currency:n.通货;通用;市价
currently:ad.普遍地;当前
custom:n.海关,关税
customary:a.通常的;照惯例的
cutter:n.用于切割的器械
cylinder:n.圆筒;柱(面);汽缸
damn:n.诅咒;丝毫
datum:n.资料;数据;已知数
dazzle:vt.&vi.炫耀;迷惑
deafen:vt.使聋;使隔音
deal:vi.做买卖;对付
dealer:n.商人,贩子;发牌者
dean:n.(大学)院长,系主任
decay:vt.使腐朽,使腐烂
decidedly:ad.明确地,坚决地
decimal:a.小数的,十进制的
decisive:a.决定性的;果断的
declaration:n.宣布,宣言;申诉
decline:vt.下倾;偏斜;衰退
decompose:vt.&vi.腐败;分解
decorative:a.装饰的;可作装饰的
decree:n.法令,政令;教令
dedicate:vt.奉献;献身
deem:vi.想
deepen:vt.加浓
d
  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值