.Tang

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

 xpath

        li_category = response.xpath("//div[@class='r-name']")    <div class="r-name"><div>       
        li_category = response.xpath("//div[contains(@class, 'r-name')]")   <div class="r-name a b"><div> 包含'r-name'的所有div
     li_category = response.xpath("//a[text()='下一页']/@href").extract_first()  文本 = ’下一页‘的 a 标签的 href属性
     li_category = response.xpath("//a[text()='关键字:']/../li/text()").extract_first()  .. 父级

响应的同类数据但是格式不同,比如

    
   // category1 有a标签
   <div class="a"> <a href="">aaaa</a> </div> // category2 没有a标签 <div class="a"> aaaa </div>

  此时取文本可以这样取

response.xpath("//div[@class='a']//text()").extract().strip()

 响应的同类数据但是格式不同,比如

    <div class='a'>
        <a href="">aaaa</a>
    </div>

    <div class='a'>
        <a href="">aaaa2</a>
        <a href="">aaaa1</a>
    </div>
此时取文本可以这样取
response.xpath("//div[@class='a']/a/text").extract()

 

 

完善url

import request, urllib


a = 'http://www.xxx.com?ss=1'
b = '?kw=22'
res = urllib.parse.urljoin(a, b) # parse需要与 request一起使用,框架中一般都有request
print(res) # http://www.xxx.com?kw=22

 

posted on 2019-04-28 14:01  .Tang  阅读(218)  评论(0编辑  收藏  举报