zoukankan      html  css  js  c++  java
  • Python爬虫教程-17-ajax爬取实例(豆瓣电影)

    Python爬虫教程-17-ajax爬取实例(豆瓣电影)

    ajax: 简单的说,就是一段js代码,通过这段代码,可以让页面发送异步的请求,或者向服务器发送一个东西,即和服务器进行交互

    对于ajax:
    • 1.一定会有 url,请求方法(get, post),可能有数据
    • 2.一般使用 json 格式

    爬取豆瓣电影

    # 爬取豆瓣电影数据
    # 了解ajax的爬取方式
    # https://movie.douban.com/
    
    from urllib import request
    import json
    
    # url信息:interval_id表示排名段(可自行修改),limit限制20个
    url = "https://movie.douban.com/j/chart/top_list?type=5&interval_id=100%3A90&action=&start=20&limit=20"
    
    rsp = request.urlopen(url)
    data = rsp.read().decode()
    
    data = json.loads(data)
    
    print(data)
    
    

    运行结果

    可以看到结果在一行显示
    这里写图片描述

    修改输出格式

    # 爬取豆瓣电影数据
    # 了解ajax的爬取方式
    # https://movie.douban.com/
    
    from urllib import request
    import json
    
    # url信息:interval_id表示排名段(可自行修改),limit限制20个
    url = "https://movie.douban.com/j/chart/top_list?type=5&interval_id=100%3A90&action=&start=20&limit=20"
    
    rsp = request.urlopen(url)
    data = rsp.read().decode()
    
    data = json.loads(data)
    
    # 遍历输出每个'k'和'v'的值
    for item in data:
          print("排名:", item['rank'], "
    ",
                "名称:", item['title'], "
    ",
                "类型:", item['types'], "
    ",
                "主演:", item['actors'], "
    ",
                "分数:", item['score'],"
    -------------",)
    

    运行结果

    这里写图片描述
    这里结果就比较顺眼了,如果需要更改排名段,因为是get请求,修改需要在url参数即可

    更多文章链接:Python 爬虫随笔

    • 本笔记不允许任何个人和组织转载
  • 相关阅读:
    java调优参数记录
    Java性能调优实践
    Java常用Json库性能对比
    微服务架构
    css美化页面
    HTML5⑥
    初始css
    HTML⑤
    反射机制
    简单工厂设计模式
  • 原文地址:https://www.cnblogs.com/xpwi/p/9600894.html
Copyright © 2011-2022 走看看