要抓取的网页内容在括号里,正则怎么写?

发布于 2022-09-04 14:45:13 字数 893 浏览 13 评论 0

    <dt>
    <span class="gray6 ">名称:</span>
    <a title="查看" class="blue" id="agantesfxq_B02_08" href="http://xiandai007.com/esf/" target="_blank">安现</a>
    ( 
    <a class="blue" id="agatdesf_B02_09" href="/ho-a021551/" target="_blank">
                                                       中间
    </a><a class="blue" id="agatdesf_B02_10" href="/ho-a011551-b03497/" target="_blank">
                            草原牧场  #这是我要抓取的内容我把它放到组(.*?)里面。
     </a>
     ) [
     <a class="blue" id="agantdesf_B02_11" href="acchor">图文</a>
     ]
     </dt>

我就是想抓取第9行那里的中文内容,放到一个组里面。本来应该很简单,但是试了好多次就是抓不到,报错是没有内容。估计和第5行,和11行的括号有关。请问怎么写正则才能抓得到?
我原来这样写

d = re.search(r'<a class="blue" id="agatdesf_B02_10".*?>\s*(.*?)\s*</a>', s).group(1)  

抓不到,谁帮我看下错在哪里?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

回眸一笑 2022-09-11 14:45:13

python3

html='''
    <dt>
    <span class="gray6 ">名称:</span>
    <a title="查看" class="blue" id="agantesfxq_B02_08" href="http://xiandai007.com/esf/" target="_blank">安现</a>
    ( 
    <a class="blue" id="agatdesf_B02_09" href="/ho-a021551/" target="_blank">
                                                       中间
    </a><a class="blue" id="agatdesf_B02_10" href="/ho-a011551-b03497/" target="_blank">
                            草原牧场  #这是我要抓取的内容我把它放到组(.*?)里面。
     </a>
     ) [
     <a class="blue" id="agantdesf_B02_11" href="acchor">图文</a>
     ]
     </dt>
'''
import re
p=re.compile(r'<a\s+?[^>]*?id="agatdesf_B02_10"[^>]*>([^<]*)</a>')
print(p.findall(html)[0].strip())
##草原牧场  #这是我要抓取的内容我把它放到组(.*?)里面。
念﹏祤嫣 2022-09-11 14:45:13

推荐一本书 精通正则表达式 看看就都会了!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文