美文网首页
爬虫实战1.3.7 页面解析-抓取猫眼电影排行(正则解析)

爬虫实战1.3.7 页面解析-抓取猫眼电影排行(正则解析)

作者: 罗汉堂主 | 来源:发表于2020-03-12 15:06 被阅读0次

    这篇还是继续我们的页面解析,如果承接前面几篇的话,大家可能会认为这次说的是pyquery,经我这一说就不是这样的了,今天介绍一个更加好用的一个库:requests-html

    1.request-html介绍

    首先先简单介绍一下,requests-html就是requests的作者开发的,将Requests、PyQuery、lxml、BeautifulSoup等库进行了二次封装,本身Requests库已经够简单、够强大了,requests-html又做了一次升级。。。他的强大可见一斑,遗憾的是只支持Python3.6以上版本。想要详细了解的可以去git或文档那看:
    源码请看:github地址
    中文文档:中文文档地址
    重要的可以引用文档开始这几句话来表示:

    全面支持解析JavaScript!
    CSS 选择器 (jQuery风格, 感谢PyQuery).
    XPath 选择器, for the faint at heart.
    自定义user-agent (就像一个真正的web浏览器).
    自动追踪重定向.
    连接池与cookie持久化.
    令人欣喜的请求体验,魔法般的解析页面.
    

    2.request-html安装

    安装的话使用pip即可

    pip install requests-html
    

    3.request-html应用

    首先来做个对比:平常做的时候我们是先发出请求,然后再进行解析:

    import requests
    from pyquery import PyQuery as pq
    
    #获取网页
    html = requests.get()
    #解析网页
    doc = pq(html)
    

    我们再看一下requests-html:

    from requests_html import HTMLSession
    
    session = HTMLSession()
    html = session.get()
    

    很明显的改变,requests-html将请求跟解析合并到一块了,一步到位。

    下面我们还是以猫眼TOP100来看下requests-html的用法
    发出请求,获取页面信息:

    from requests_html import HTMLSession
    
    session = HTMLSession()
    req_html = session.get("https://maoyan.com/board/4")
    print(req_html)
    

    看下返回:

    <Response [200]>
    

    相关文章

      网友评论

          本文标题:爬虫实战1.3.7 页面解析-抓取猫眼电影排行(正则解析)

          本文链接:https://www.haomeiwen.com/subject/snqvnctx.html