python - 【BeautifulSoup or sth】如何获得一个标签的描述信息?
迷茫
迷茫 2017-04-17 13:27:51
[Python讨论组]
    <dd 
        isStop = "1" class='isStop'
        matchcode="201409066001"
        matchnumcn ="周六001"
        starttime = "1409994000000"
        endtime ="1409993820000"
             isattention = "0"
        hostname="北九州" guestname="福冈黄蜂"
        leagueid = "533"
        hostteamid = "46148"
        visitteamid = "12193"
        matchid="1000817"
        leagueName="J2联赛"
        class="league_533"
style="display: none;"
        ishot="0"
        >
pass</dd>

比如我想获取的是:

style="display: none;"

这个字段的none~如何获取呢?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(4)
ringa_lee

上代码:

#! /usr/bin/env python
# -*- coding: utf-8 -*-

tag_content = """
<dd
    isStop = "1" class='isStop'
    matchcode="201409066001"
    matchnumcn ="周六001"
    starttime = "1409994000000"
    endtime ="1409993820000"
    isattention = "0"
    hostname="北九州" guestname="福冈黄蜂"
    leagueid = "533"
    hostteamid = "46148"
    visitteamid = "12193"
    matchid="1000817"
    leagueName="J2联赛"
    class="league_533"
    style="display: none;"
    ishot="0">
pass</dd>
"""
from bs4 import BeautifulSoup
tag_soup = BeautifulSoup(tag_content)
style_str = tag_soup.dd["style"]
print style_str.split(":")[1].lstrip()[:-1]

Beautiful Soup不能直接获得“none”,不过我们能容易地得到display: none;,然后用python很容易处理了。

怪我咯
s = """  <dd
    isStop = "1" class='isStop'
    matchcode="201409066001"
    matchnumcn ="周六001"
    starttime = "1409994000000"
    endtime ="1409993820000"
     isattention = "0"
    hostname="北九州" guestname="福冈黄蜂"
    leagueid = "533"
    hostteamid = "46148"
    visitteamid = "12193"
    matchid="1000817"
    leagueName="J2联赛"
    class="league_533"
    style="display: none;"
    ishot="0"
    >
pass</dd>"""

from pyquery import PyQuery
p = PyQuery(s)

a=p("dd")
print a.attr('style')
print a.attr('hostname')

display: none;
北九州

黄舟

1.如果python的cgi中能有专门获取html中style或者属性的方法最好,这style 既没有id name 也不是value。不知道能不能get出来
2,我的超级笨办法我的思路:把这一大块用'''包裹,之后,另开一个py文件,用open打开刚才的要检索的大块,用readlins()去读取那大块中的每一行,用正则匹配出 style=“dispaly:”,之后再用str的切片 切出来。

PHPz

用tag attrs["style"] 然后正则

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

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