本文章介绍python实例解析——Web页面元素提取
提取网页:http://ngchina.com.cn/
# encoding=utf-8
# 步骤一:读取保存在本地的html文件
# 步骤二:解析并提取其中的图片链接
# 步骤三:输出并提取结果到屏幕
# 步骤四:保存提取结果为文件
# 1读取文件内容,结果转换为分行列表
def getHTMLLines(htmlpath):
f=open(htmlpath,"r",encoding='utf-8')
ls=f.readlines()
f.close()
return ls
# 2解析文件提取URL
def extractImagesUrls(htmllist):
urls=[]
for line in htmllist:
if 'img' in line:
url=line.split('src=')[-1].split('"')[1]
if 'http' in url:
urls.append(url)
return urls
# 3获取的链接输出到屏幕上
def showResults(urls):
count=0
for url in urls:
print('第{:2}个URL:{}'.format(count,url))
count+=1
# 4保存到结果到文件
def saveResults(filepath,urls):
f=open(filepath,"w")
for url in urls:
f.write(url+"\n")
f.close()
# 主函数
def main():
inputfile='ngchina.html'
outputfile='ngchina.txt'
htmlLines=getHTMLLines(inputfile)
imagesUrls=extractImagesUrls(htmlLines)
showResults(imagesUrls)
saveResults(outputfile,imagesUrls)
# 执行
main()
该实例完成了简单的HTML解析和提取功能
对于更加复杂的建议使用HTML解析库
比如beautifulsoup4第三方库