zoukankan      html  css  js  c++  java
  • lxml中的etree(待补)

    待查看源码,为什么打印出来的类型是这样
    类型集合返回如下:

    1. <class 'list'>
      2.<class 'lxml.etree._Element'>
      3.<class 'lxml.etree._ElementUnicodeResult'> # 这里就是普通字符串了,可以执行写入文件操作
    import xlwt
    import requests
    from lxml import etree
    import time
    
    
    def getOnePage(url):
        html = requests.get(url)
        selector = etree.HTML(html.text)
        # 查询节点的话表格就要表格的节点,这里以ul节点查询为例//ul[@class="all-img-list cf"]/li
        # XPath定位节点返回的是节点集合
        infos = selector.xpath('//*[@id="book-img-text"]/ul/li') # //*[@id="book-img-text"]/ul/li[1]
        # 打印一些节点
        print(infos) 
        print(type(infos)) # <class 'list'>
        for info in infos:
            print(type(info)) # <class 'lxml.etree._Element'>
            print(info) # <Element li at 0x19dc2c7e0c8>
            print('
    ')
            style_1 = info.xpath('div[2]/p[1]/a[2]/text()')[0]
            style_2 = info.xpath('div[2]/p[1]/a[3]/text()')[0]
            print(style_1,type(style_1)) # <class 'lxml.etree._ElementUnicodeResult'>
            print('
    ')
            print(style_2,type(style_2))
    getOnePage('https://www.qidian.com/all/page%7B%7D/') # 打印出来的尽然是内存地址列表
    
    努力拼搏吧,不要害怕,不要去规划,不要迷茫。但你一定要在路上一直的走下去,尽管可能停滞不前,但也要走。
  • 相关阅读:
    Django~1
    Codeforces Round#201(div1) D. Lucky Common Subsequence
    ACdream原创群赛(18)のAK's dream题解
    区间dp
    部署AlwaysOn第三步:集群资源组的健康检测和故障转移
    Join 和 App
    SSRS配置1:凭证和邮件
    巧用Alt 键
    把Excel的数据导入到数据库
    jvm系列:Java GC 分析
  • 原文地址:https://www.cnblogs.com/wkhzwmr/p/15311502.html
Copyright © 2011-2022 走看看