python学习之xpath基础

来源:互联网 发布:三维浏览软件 mac 编辑:程序博客网 时间:2024/06/06 12:50
#-*-coding:utf8-*-from lxml import etreehtml = '''<!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8">    <title>测试-常规用法</title></head><body><div id="content">    <ul id="useful">        <li>这是第一条信息</li>        <li>这是第二条信息</li>        <li>这是第三条信息</li>    </ul>    <ul id="useless">        <li>不需要的信息1</li>        <li>不需要的信息2</li>        <li>不需要的信息3</li>    </ul>    <div id="url">        <a href="http://jikexueyuan.com">极客学院</a>        <a href="http://jikexueyuan.com/course/" title="极客学院课程库">点我打开课程库</a>    </div></div></body></html>'''selector = etree.HTML(html)#提取文本 text()content = selector.xpath('//ul[@id="useful"]/li/text()')for each in content:    print each#提取属性 @link = selector.xpath('//a/@href')for each in link:    print eachtitle = selector.xpath('//a/@title')print title[0]
<pre name="code" class="python">#-*-coding:utf8-*-from lxml import etreehtml1 = '''<!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8">    <title></title></head><body>    <div id="test-1">需要的内容1</div>    <div id="test-2">需要的内容2</div>    <div id="testfault">需要的内容3</div></body></html>'''html2 = '''<!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8">    <title></title></head><body>    <div id="test3">        我左青龙,        <span id="tiger">            右白虎,            <ul>上朱雀,                <li>下玄武。</li>            </ul>            老牛在当中,        </span>        龙头在胸口。    </div></body></html>'''#使用starts-with提取 id以test开头的div里面的文字# selector = etree.HTML(html1)# content = selector.xpath('//div[starts-with(@id,"test")]/text()')# for each in content:#     print eachselector = etree.HTML(html2)#直接使用text()无法提取嵌套标签的内容# content_1 = selector.xpath('//div[@id="test3"]/text()')# for each in content_1:#     print each##使用string(.)提取嵌套标签里面的文字data = selector.xpath('//div[@id="test3"]')[0]info = data.xpath('string(.)')content_2 = info.replace('\n','').replace(' ','')print content_2



0 0
原创粉丝点击