天天看点

Python爬虫入门(二)数据提取(lxml)

XPath语法和lXml模块

什么是XPath?

Xpath是一门在xml和html文档中查找信息的语言,可用来在xml和html文档中对元素和属性进行遍历

Xpath开发工具

  1. chrome插件xpath helper
  2. Firefox插件try xpath

Xpath语法:

选取节点:

XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。

Python爬虫入门(二)数据提取(lxml)

谓语

谓语用来查找某个特定的节点或者包含某个指定的值的节点。

谓语被嵌在方括号中。

实例

在下面的表格中,我们列出了带有谓语的一些路径表达式,以及表达式的结果:

Python爬虫入门(二)数据提取(lxml)

选取未知节点:

XPath 通配符可用来选取未知的 XML 元素。

Python爬虫入门(二)数据提取(lxml)

一般使用方式

使用//获取整个页面当中的元素,然后写标签名,然后再填写谓词进行提取

需要主要的知识点

1./和//的区别:/代表只获取直接子节点。//获取子孙结点。一般//

2.contains:有时候某个属性包含多个值,可以使用contains

例如

//div[contains(@class,’jab-detail’)]
           

3.谓词中的下标是从1开始的,不是从0开始的。

Lxml库

Lxml是一个html/xml的解析器,主要功能是如何解析和提取html/xml数据

Lxml和正则一样,也是用C实现的,是一款高性能的python html/xml解析器,我们可以利用之前学习的xpath语法,来快速的定位特定的元素以及结点信息。

需要安装C语言库,可以使用pip安装:pip install lxml

基本使用:

我们可以利用他解析html代码,如果html代码不规范,他会自动补全。

#encoding=utf-8

from lxml import etree
text=""""
 <div class="r_city_tit">推荐城市:</div>
    <ul class="r_city_con">
                 <li class="r_search_item"><a href="https://www.lagou.com/beijing/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >北京找工作</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/beijing/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >北京招聘</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/shanghai/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >上海找工作</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/shanghai/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >上海招聘</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/hangzhou/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >杭州找工作</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/hangzhou/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >杭州招聘</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/guangzhou/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >广州找工作</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/guangzhou/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >广州招聘</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/shenzhen/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >深圳找工作</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/shenzhen/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >深圳招聘</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/chengdu/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >成都找工作</a></li>
                 <li class="r_search_item"><a href="https://www.lagou.com/chengdu/" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow" >成都招聘</a></li>
           </ul>
</div>
"""

htmlElem=etree.HTML(text)
print(etree.tostring(htmlElem,encoding='utf-8').decode('utf-8'))
           

解析html文件,默认使用的是xml解析器,所有如果遇到不规范的html代码的时候会解析错误,这时候要自己解析HTML解析器。

除了直接从字符串进行解析,lxml还支持从文件中读取内容,新建一个hello.html文件

然后利用etree.parse()方法进行读取

htmlElme=etree.parse("hello.html)
           

当出现以下情况,网页里面标签不匹配

Python爬虫入门(二)数据提取(lxml)

可以使用HTMLParser解析HTML代码

parser=etree.HTMLParser(encoding='utf-8')
htmlElme=etree.parse("text.html",parser=parser)
           

实例代码

from lxml import etree

parser=etree.HTMLParser(encoding='utf-8')
html=etree.parse("tenxun.html",parser=parser)

#取出所有的div标签
# divs=html.xpath("//div")
# for div in divs:
#     print(etree.tostring(div,encoding='utf-8').decode('utf-8'))

#取出第二个div标签
# div=html.xpath("//div[2]")[0]
# print(etree.tostring(div,encoding='utf-8').decode('utf-8'))

#获取到class=header-wrap的div标签
# divs=html.xpath("//div[@class='header-wrap']")
# for div in divs:
#     print(etree.tostring(div,encoding='utf-8').decode('utf-8'))

#获取所有的a标签的href属性
# ass = html.xpath("//a/@href")
# for a in ass:
#     print("https://www.luogu.org/problem/list"+a)

#获取纯文本
trs=html.xpath("//div[@class='row-wrap']")
infos=[]
for tr in trs:
    #href返回的是列表,不能直接写出fullhref='https://www.luogu.org/problem/list'+href
    href=tr.xpath(".//div[@class='title']/a/@href")[0]
    fullhref='https://www.luogu.org/problem/list'+href
    num=tr.xpath(".//div[@class='part left-part']/span/text()")[0]
    title=tr.xpath(".//div[@class='title']/a/text()")[0]
    info={
        '题号':num,
        '名字':title
    }
    infos.append(info)
print(infos)
           

tenxun.html

<div data-v-6c294b5c="" class="border"><div data-v-6c294b5c="" class="header-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row header"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><div data-v-65fb3fca="" sortparams="[object Object]" class="status" data-v-6c294b5c=""><span class="lfe-caption">
        状态
       <!----></span></div> <div data-v-65fb3fca="" sortkey="pid" sortparams="[object Object]" class="pid" data-v-6c294b5c=""><span class="lfe-caption">
        题号
       <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="sort" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" class="svg-inline--fa fa-sort fa-w-10" style="cursor: pointer; color: rgb(191, 191, 191);"><path fill="currentColor" d="M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z" class=""></path></svg></span></div> <div data-v-65fb3fca="" sortkey="name" sortparams="[object Object]" class="title" data-v-6c294b5c=""><span class="lfe-caption">
        题目名称
       <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="sort" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" class="svg-inline--fa fa-sort fa-w-10" style="cursor: pointer; color: rgb(191, 191, 191);"><path fill="currentColor" d="M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z" class=""></path></svg></span></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-65fb3fca="" sortparams="[object Object]" class="tag" data-v-6c294b5c=""><span class="lfe-caption"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default">显示算法</a>
        标签
       <!----></span></div> <div data-v-65fb3fca="" sortkey="difficulty" sortparams="[object Object]" class="difficulty" data-v-6c294b5c=""><span class="lfe-caption">
        难度
       <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="sort" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" class="svg-inline--fa fa-sort fa-w-10" style="cursor: pointer; color: rgb(191, 191, 191);"><path fill="currentColor" d="M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z" class=""></path></svg></span></div> <div data-v-65fb3fca="" sortparams="[object Object]" class="rate" data-v-6c294b5c=""><span class="lfe-caption">
        通过率
       <!----></span></div></div></div></div> <div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1000&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-check status" data-v-445f91a0="" style="color: rgb(82, 196, 26);"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1000</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1000" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          超级玛丽游戏
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(254, 76, 97); color: rgb(255, 255, 255);">
            入门
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 40.4416%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">117.55k/290.68k</div></div></div></div></div><div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1001&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-check status" data-v-445f91a0="" style="color: rgb(82, 196, 26);"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1001</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1001" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          A+B Problem
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(254, 76, 97); color: rgb(255, 255, 255);">
            入门
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 60.6791%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">208.33k/343.33k</div></div></div></div></div><div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1002&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-minus status" data-v-445f91a0="" style="opacity: 0.7;"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1002</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1002" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          过河卒
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">NOIp普及组</span></a><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">2002</span></a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(243, 156, 17); color: rgb(255, 255, 255);">
            普及-
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 32.892%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">35.97k/109.36k</div></div></div></div></div><div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1003&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-minus status" data-v-445f91a0="" style="opacity: 0.7;"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1003</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1003" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          铺地毯
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">NOIp提高组</span></a><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">2011</span></a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(243, 156, 17); color: rgb(255, 255, 255);">
            普及-
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 37.3004%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">54.42k/145.90k</div></div></div></div></div><div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1004&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-minus status" data-v-445f91a0="" style="opacity: 0.7;"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1004</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1004" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          方格取数
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">NOIp提高组</span></a><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">2000</span></a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(82, 196, 26); color: rgb(255, 255, 255);">
            普及+/提高
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 51.2326%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">20.72k/40.44k</div></div></div></div></div><div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1032&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-minus status" data-v-445f91a0="" style="opacity: 0.7;"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1032</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1032" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          字串变换
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">NOIp提高组</span></a><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">2002</span></a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(82, 196, 26); color: rgb(255, 255, 255);">
            普及+/提高
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 26.6168%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">8.43k/31.65k</div></div></div></div></div><div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1033&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-minus status" data-v-445f91a0="" style="opacity: 0.7;"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1033</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1033" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          自由落体
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">NOIp提高组</span></a><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">2002</span></a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(255, 193, 22); color: rgb(255, 255, 255);">
            普及/提高-
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 44.7928%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">4.21k/9.41k</div></div></div></div></div><div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1048&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-minus status" data-v-445f91a0="" style="opacity: 0.7;"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1048</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1048" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          采药
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">NOIp普及组</span></a><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">2005</span></a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(243, 156, 17); color: rgb(255, 255, 255);">
            普及-
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 49.8958%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">44.55k/89.28k</div></div></div></div></div><div data-v-6c294b5c="" class="row-wrap"><div data-v-65fb3fca="" data-v-6c294b5c="" class="row"><div data-v-65fb3fca="" data-v-6c294b5c="" class="part left-part"><a data-v-445f91a0="" data-v-65fb3fca="" href="/record/list?pid=P1049&amp;user=257354" target="_blank" rel="external nofollow"  target="_blank" class="color-default" data-v-6c294b5c="" style="color: inherit;"><i data-v-08d409fe="" data-v-65fb3fca="" class="fas fa-minus status" data-v-445f91a0="" style="opacity: 0.7;"></i></a> <span data-v-65fb3fca="" data-v-6c294b5c="" class="pid">P1049</span> <div data-v-65fb3fca="" data-v-6c294b5c="" class="title"><a data-v-445f91a0="" data-v-65fb3fca="" href="/problem/P1049" target="_blank" rel="external nofollow"  target="_blank" class="title color-default" data-v-6c294b5c="">
          装箱问题
        </a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="part right-part"><div data-v-f5a90508="" data-v-65fb3fca="" class="tags" data-v-6c294b5c=""><div data-v-f5a90508="" class="tags-wrap multiline"><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">NOIp普及组</span></a><a data-v-445f91a0="" data-v-f5a90508="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="tag color-none"><span data-v-20b7d558="" data-v-f5a90508="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(52, 152, 219); color: rgb(255, 255, 255);">2001(或之前)</span></a></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="difficulty"><a data-v-445f91a0="" data-v-65fb3fca="" href="javascript:void 0" target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  target="_blank" rel="external nofollow"  class="color-default" data-v-6c294b5c=""><span data-v-20b7d558="" data-v-65fb3fca="" class="lfe-caption" data-v-445f91a0="" style="background: rgb(243, 156, 17); color: rgb(255, 255, 255);">
            普及-
          </span></a></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-wrapper"><div data-v-21210360="" data-v-65fb3fca="" class="progress-frame rate" data-v-6c294b5c=""><div data-v-21210360="" style="width: 49.2082%;"></div></div> <div data-v-65fb3fca="" data-v-6c294b5c="" class="rate-popup">30.61k/62.20k</div></div></div></div></div></div>
           

运行结果

Python爬虫入门(二)数据提取(lxml)