python核心编程第九章(9-11)
来源:互联网 发布:单片机 液晶屏与电机 编辑:程序博客网 时间:2024/05/23 17:17
def UrlBookMark():
"""9–11. Web 站点地址.a) 编写一个 URL 书签管理程序.
使用基于文本的菜单,用户可以添加, 修改或者删除书签数据
项. 书签数据项中包含站点的名称, URL 地址, 以及一行简
单说明(可选). 另外提供检索功能,可以根据检索关键字在站
点名称和 URL 两部分查找可能的匹配. 程序退出时把数据保
存到一个磁盘文件中去;再次执行时候加载保存的数据."""
prompt = '''
URL bookmark:
(A)dd
(H)ttp
(M)odify
(D)elete
(S)earch
(Q)uit
Enter your selection:'''
function = {'a' : add,
'm' : modify,
'd' : delete,
's' : search,
'h' : addHttp}
while True:
slt = raw_input(prompt).strip()[0].lower()
if 'q' == slt: return False
if slt in 'amdsh':
function[slt]()
import ConfigParser
def add():
urlname = raw_input('Please enter URL name:').strip()
url = raw_input('Please enter URL:').strip()
cf = ConfigParser.ConfigParser()
cf.read('Bookmark.ini')
try:
cf.add_section('Bookmark')
except Exception,e: print e
cf.set('Bookmark',urlname,url)
fp = open('Bookmark.ini','w')
cf.write(fp)
fp.close()
import urllib2
import os
def addHttp():
prompt = '''
Whether creating bookmark directory?
Yes? please enter dir name. Not? please
press "Enter" key ...
'''
urlname = raw_input('Please enter URL name:').strip()
url = raw_input('Please enter URL <http://>:').strip()
if 0 == len(url) or 0 == len(urlname): return False
try:
lop = urllib2.urlopen(url)
except Exception,e: print e
ndir = raw_input(prompt)
if 0 != len(ndir):
os.mkdir(ndir)
os.chdir(ndir)
msg = lop.read()
fp = open(urlname+'.html','w')
fp.write(msg)
fp.close()
def modify():
string = 'Please enter url name:'
name = raw_input(string).strip()
cf = ConfigParser.ConfigParser()
cf.read('Bookmark.ini')
if cf.has_option('Bookmark',name):
print '%s -- %s' %(name,cf.get('Bookmark',name))
url = raw_input('Enter modified url:').strip()
if 0 == len(url): return False
cf.set('Bookmark',name,url)
fp = open('Bookmark.ini','w')
cf.write(fp)
fp.close()
else: print '%s not existed!'%name
def delete():
string = 'Please enter URL name you want to delete:'
urlname = raw_input(string).strip()
cf = ConfigParser.ConfigParser()
cf.read('Bookmark.ini')
if urlname in cf.options('Bookmark'):
cf.remove_option('Bookmark',urlname)
print 'Deleted successfully!'
else: print 'URL bookmark is not existing.'
def search():
flag = 0
string = 'Please enter url name or link:'
url = raw_input(string).strip()
cf = ConfigParser.ConfigParser()
cf.read('Bookmark.ini')
for op in cf.options('Bookmark'):
if url == op or url == cf.get('Bookmark',op):
print 'Found: %s -- %s' %(op,cf.get('Bookmark',op))
flag = 1
break
if 0 == flag:
print 'Not found,%s not existed!'%url
"""9–11. Web 站点地址.a) 编写一个 URL 书签管理程序.
使用基于文本的菜单,用户可以添加, 修改或者删除书签数据
项. 书签数据项中包含站点的名称, URL 地址, 以及一行简
单说明(可选). 另外提供检索功能,可以根据检索关键字在站
点名称和 URL 两部分查找可能的匹配. 程序退出时把数据保
存到一个磁盘文件中去;再次执行时候加载保存的数据."""
prompt = '''
URL bookmark:
(A)dd
(H)ttp
(M)odify
(D)elete
(S)earch
(Q)uit
Enter your selection:'''
function = {'a' : add,
'm' : modify,
'd' : delete,
's' : search,
'h' : addHttp}
while True:
slt = raw_input(prompt).strip()[0].lower()
if 'q' == slt: return False
if slt in 'amdsh':
function[slt]()
import ConfigParser
def add():
urlname = raw_input('Please enter URL name:').strip()
url = raw_input('Please enter URL:').strip()
cf = ConfigParser.ConfigParser()
cf.read('Bookmark.ini')
try:
cf.add_section('Bookmark')
except Exception,e: print e
cf.set('Bookmark',urlname,url)
fp = open('Bookmark.ini','w')
cf.write(fp)
fp.close()
import urllib2
import os
def addHttp():
prompt = '''
Whether creating bookmark directory?
Yes? please enter dir name. Not? please
press "Enter" key ...
'''
urlname = raw_input('Please enter URL name:').strip()
url = raw_input('Please enter URL <http://>:').strip()
if 0 == len(url) or 0 == len(urlname): return False
try:
lop = urllib2.urlopen(url)
except Exception,e: print e
ndir = raw_input(prompt)
if 0 != len(ndir):
os.mkdir(ndir)
os.chdir(ndir)
msg = lop.read()
fp = open(urlname+'.html','w')
fp.write(msg)
fp.close()
def modify():
string = 'Please enter url name:'
name = raw_input(string).strip()
cf = ConfigParser.ConfigParser()
cf.read('Bookmark.ini')
if cf.has_option('Bookmark',name):
print '%s -- %s' %(name,cf.get('Bookmark',name))
url = raw_input('Enter modified url:').strip()
if 0 == len(url): return False
cf.set('Bookmark',name,url)
fp = open('Bookmark.ini','w')
cf.write(fp)
fp.close()
else: print '%s not existed!'%name
def delete():
string = 'Please enter URL name you want to delete:'
urlname = raw_input(string).strip()
cf = ConfigParser.ConfigParser()
cf.read('Bookmark.ini')
if urlname in cf.options('Bookmark'):
cf.remove_option('Bookmark',urlname)
print 'Deleted successfully!'
else: print 'URL bookmark is not existing.'
def search():
flag = 0
string = 'Please enter url name or link:'
url = raw_input(string).strip()
cf = ConfigParser.ConfigParser()
cf.read('Bookmark.ini')
for op in cf.options('Bookmark'):
if url == op or url == cf.get('Bookmark',op):
print 'Found: %s -- %s' %(op,cf.get('Bookmark',op))
flag = 1
break
if 0 == flag:
print 'Not found,%s not existed!'%url
0 0
- python核心编程第九章(9-11)
- python核心编程第九章(9-10)
- python核心编程第九章(9-12)
- Python核心编程 第九章
- 《Python核心编程》第九章
- python 核心编程 第九章
- Python核心编程第九章笔记
- python核心编程--第九章 9.11 练习
- python核心编程第九章答案
- Python核心编程 第九章练习
- python核心编程第九章练习
- python 核心编程第九章练习题
- 《Python核心编程》第九章编程题代码
- python核心编程第九章习题答案(1)
- python核心编程第九章习题答案(2)
- python核心编程第九章习题答案(3)
- python核心编程第九章_文件系统的一个程序
- 《Python核心编程》第九章:文件和输入输出
- 互联网广告系统综述四定向
- hdu 2896 病毒侵袭(AC自动机)
- 画XilinxPCB板的时候整理的一些资料
- 第11周项目5当年第几天
- 数据库中的索引
- python核心编程第九章(9-11)
- Ubuntu下SSH设置
- storyboard的问题
- Linux中查看CPU信息
- last day on windows programming
- python核心编程第九章(9-10)
- highcharts特殊定制:x轴文字竖直显示(兼容各浏览器)
- 远程备份还原SQL数据库
- RabbitMQ学习之集群部署