关宇翔的作业二

代码

      
        
import requests
import re

url='http://www.jxufe.edu.cn/'
html=requests.get(url)
#print(html)          #打印状态码
#print(html.content)  #打印源码
#print(html.text)      #打印网站源代码
f = open('jxufe.html','w',encoding='utf-8')
f.write(html.text)    #将网页源代码写入新的html文件,方便使用atom查看
f.close

p = re.compile('<.*?>(.*)<.*?>')    #设定正则表达式匹配规则
txt = p.findall(html.text)
while '' in txt:                    #删掉列表中的空元素
  txt.remove('')
txtstr = '\n'.join(txt)               #把列表转化为字符串,同时也要加上换行符

jxufe1 = re.sub("<.*?>",'',txtstr)   #删掉所需内容中多余的标签
jxufe2 = re.sub("  |MORE",'',jxufe1) #删掉所需内容中多余的一些字符
jxufe3 = re.sub(r'[|+]','',jxufe2)    #删掉 特殊字符 |和+
jxufe = re.sub('\n{2,}','\n',jxufe3)  #将产生的多余的换行符统一成一个

print(jxufe)                          #结果预览


#p1 = re.compile('(.*)')      #另一种比较麻烦的每个标签单独匹配的方式?
#txt1 = p1.findall(html.text)
#p2 = re.compile('

(.*)

') #txt2 = p2.findall(html.text) #p3 = re.compile('(.*)
') #txt3 = p3.findall(html.text)

结果

结果截图