Python爬虫如何爬取span和span中间的内容并分别存入字典里?
phpcn_u1582
phpcn_u1582 2017-05-18 10:52:42
[Python讨论组]

我想把房屋概况分别抓出来并分别作为独立的列存储进字典里,但是行内元素没有办法直接用for循环抠出来。
这是我的代码:

soup.select('.house-info li')[1].text.strip()

这是网页html代码:

  • 房屋概况:住宅 |1室1厅1卫 |46m² | (高层)/共18层 |南北 | 豪华装修
  • phpcn_u1582
    phpcn_u1582

    全部回复(4)
    曾经蜡笔没有小新

    其实还是很有简单的,你看这个还是有规律的,规律在于有分隔符|,我写了个DEMO

    something  = '''<li><span class="info-tit">房屋概况:</span>住宅  <span class="splitline">|</span>1室1厅1卫<span class="splitline">|</span><span title="建筑面积">46m²</span><span class="splitline">|</span> (高层)/共18层
    
                            <span class="splitline">|</span>南北
    
                            <span class="splitline">|</span> 豪华装修
    
                        </li>''';
    
    soup  = BeautifulSoup(something, 'lxml')
    plaintext = soup.select('li')[0].get_text().strip()

    通过get_text()得到内在所有内容,然后去除空格。后面你就用split进行分割吧,后面的不写了。
    如果有问题再交流。

    巴扎黑

    innerText

    滿天的星座

    你这种情况,我觉得用 for 循环加上正则表达式是最方便的,如果所有模版都是这样固定的话

    黄舟

    用pyquery吧

    from pyquery import PyQuery as Q

    Q(text).find('.house-info li').text()

    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号