zoukankan      html  css  js  c++  java
  • xpath, urllib

     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
  • 相关阅读:
    JS 打印实现部分打印
    window.opener和window.open
    js中!和!!的区别及用法
    SQL循环表里的数据
    简明lua教程[转]
    mysql调优技巧-profiles
    MySQL的InnoDB的幻读问题
    linux exec命令
    常用正则搜集整理
    flashget for linux安装问题解决
  • 原文地址:https://www.cnblogs.com/tangpg/p/10783623.html
Copyright © 2011-2022 走看看