7-14 利用正则表达式得到一段HTML文本中所有超链接对应的网址

编写程序实现以下功能:利用正则表达式得到一段HTML文本中所有超链接对应的网址,并将网址输出到屏幕上(每行输出一个网址)。

输入格式:

从键盘输入 一段HTML文本,多行输入,空行输入 结束。

输出格式:

输出从HTML文本中提取到的超链接所对应的网址,一行一个网址。

输入样例:

在这里给出一组输入。例如:

复制代码
<h3 class="c-title">
 <a href="https://baijiahao.baidu.com/s?id=1633289774665320636&amp;wfr=spider&amp;for=pc" data-click="{
      'f0':'77A717EA',
      'f1':'9F63F1E4',
      'f2':'4CA6DE6E',
      'f3':'54E5243F',
      't':'1557660267'
      }" target="_blank">
      影片《周恩来回延安》在<em>南开大学</em>点映开启全国路演
    </a>
</h3>
<a href="https://baijiahao.baidu.com/s?id=1632116753423885280&amp;wfr=spider&amp;for=pc" data-click="{
      'f0':'77A717EA',
      'f1':'9F73F1E4',
      'f2':'4CA6DE6E',
      'f3':'54E5243F',
      't':'1557660267'
      }" target="_blank">
      天津"<em>南开大学</em>"------莘莘学子的梦想之地
    </a>

输出样例:

在这里给出相应的输出。例如:

复制代码
https://baijiahao.baidu.com/s?id=1633289774665320636&amp;wfr=spider&amp;for=pc
https://baijiahao.baidu.com/s?id=1632116753423885280&amp;wfr=spider&amp;for=pc
python 复制代码
import re

def extract_urls(html_text):
    pattern=r'<a\s+[^>]*?href\s*=\s*["\'](.*?)["\']'
    urls =re.findall(pattern,html_text)
    return urls

def main():
    html_text=""    
    while True:
        try:
            line=input()
            if(line.strip()==""):
                break
            html_text+=line+"\n"
        except EOFError:
            break
    urls=extract_urls(html_text)
    for url in urls:
        print(url)
if __name__ == "__main__":
    main()
相关推荐
笨鸟先飞,勤能补拙8 小时前
AI 安全的下一个 5 年:从 Agent 到 AGI 的攻防博弈
人工智能·python·安全·web安全·网络安全·github·agi
Logintern098 小时前
LangSmith如何根据id关系,在服务端把扁平列表重建为树形结构,用于页面渲染Trace视图
python
吴声子夜歌8 小时前
正则表达式——常见应用软件和编程语言中的正则表达式
正则表达式
月光船幽幽8 小时前
呼吸孔设计重塑系统稳定性
python·科技·算法
不可能掉发8 小时前
Env Guard:让浏览器一眼分清生产、测试和开发环境
前端·javascript·chrome·测试工具·html·开源软件·个人开发
Bryce学亮8 小时前
FileLine,基于 Qt 6 + QML 构建的跨平台文件传输与即时通讯工具
数据库·c++·人工智能·python·qt·github
拿铁铁8 小时前
2026实操场景下平板坡口机噪音问题注意事项梳理汇总
python·电脑
夜雪一千9 小时前
Python从HTML提取纯文本、去空格、比对内容是否变化:方案+合理性分析
开发语言·python·html
Zane19949 小时前
同一个 list 为什么能被两个 for 循环同时遍历?一文讲透可迭代对象与迭代器的真相
后端·python
大鹏说大话10 小时前
HTML5 地理定位 Geolocation:获取用户位置的“红线”与最佳实践
前端·html·html5