V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
kidlfy
V2EX  ›  Python

求助大神,一个 div 标签的正则匹配

  •  
  •   kidlfy · 2018-09-07 09:38:05 +08:00 · 1689 次点击
    这是一个创建于 2066 天前的主题,其中的信息可能已经有所发展或是发生改变。

    匹配 class 是 cryptocompare-widget 的整个 div 标签 <div \class="cryptocompare-widget">........</div><scrpit></scrpit>

    6 条回复    2018-09-07 17:10:41 +08:00
    tennc
        1
    tennc  
       2018-09-07 14:04:17 +08:00
    chrome 打开后 直接在开发者工具里 找到相应的部分,copy xpath 完事
    imdong
        2
    imdong  
       2018-09-07 14:44:51 +08:00
    如果有嵌套 其他 div 的话,就不要来难为正则表达式了,不适合这么做。
    如果是其他的唯一特征如例子的话,也许可以做到(但是效率并不高,不见的比字符串截取快。)
    使用 </div><scrpit> 作为结束特征


    <div[^>]+class=(["'])cryptocompare-widget\1[^>]*>(?<body>.+)</div><scrpit>
    kidlfy
        3
    kidlfy  
    OP
       2018-09-07 16:13:31 +08:00
    @tennc 嗯,我会 xpath,但是要做标签去除,还是贼心不死想试试 re
    kidlfy
        4
    kidlfy  
    OP
       2018-09-07 16:15:43 +08:00
    @imdong 确实 div 里还嵌套很多其他的 div 所以这个匹配对我很有难度,因为我要做这个带 class 的 div 标签去除,最后还是用的 xpath,用 replace 替换的,唉,re 有时候确实很麻烦啊
    huaerxiela
        5
    huaerxiela  
       2018-09-07 16:47:23 +08:00
    from w3lib.html import remove_tags
    kidlfy
        6
    kidlfy  
    OP
       2018-09-07 17:10:41 +08:00
    @huaerxiela 这个应该只能去除标签内的内容吧,而且我要去除的这个标签非常非常非常长,不可能全部贴在代码里的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   865 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 19:30 · PVG 03:30 · LAX 12:30 · JFK 15:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.