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()
相关推荐
IVEN_4 小时前
只会Python皮毛?深入理解这几点,轻松进阶全栈开发
python·全栈
Ray Liang5 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
AI攻城狮5 小时前
如何给 AI Agent 做"断舍离":OpenClaw Session 自动清理实践
python
千寻girling5 小时前
一份不可多得的 《 Python 》语言教程
人工智能·后端·python
AI攻城狮8 小时前
用 Playwright 实现博客一键发布到稀土掘金
python·自动化运维
曲幽9 小时前
FastAPI分布式系统实战:拆解分布式系统中常见问题及解决方案
redis·python·fastapi·web·httpx·lock·asyncio
willow9 小时前
html5基础整理
html
孟健1 天前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
码路飞1 天前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python