美文网首页
猫眼电影场次信息获取并保存至json

猫眼电影场次信息获取并保存至json

作者: MA木易YA | 来源:发表于2019-07-19 12:54 被阅读0次

这回我们具体的对数据获取进行介绍,页面中不同电影、日期的场次信息都是不同的,所以我们需要分级获取,我们按照如下形式排布:

'''
    movie_session = [不同电影的场次数据
        {movie_name: ...
         result:[每一天的场次数据
            {
                date: ...
                session_result:[当天的场次数据
                    {},
                    {}....
                ]        
            }
         ]
        }
    ]:每部电影的数据
'''
image.png

1. 获取当天的场次信息

image.png

首先遍历当天所有场次,获取到对应的信息添加进列表,以日期为区分分隔,当循环结束后加入新的列表返回

session_list = today.xpath('.//table/tbody/tr')
    # 当天每个场次
    for session in session_list:
        begin_time = session.xpath('.//span[@class="begin-time"]/text()')[0]
        end_time = session.xpath('.//span[@class="end-time"]/text()')[0]
        lang = session.xpath('.//span[@class="lang"]/text()')[0]
        hall = session.xpath('.//span[@class="hall"]/text()')[0]
        session_result.append({
            "date": re.findall('\d+', time_list[num])[0] + '-' + re.findall('\d+', time_list[num])[1],
            "begin_time": begin_time,
            "end_time": end_time,
            "lang": lang,
            "hall": hall
        })
    result.append({
        "date": re.findall('\d+', time_list[num])[0] + '-' + re.findall('\d+', time_list[num])[1],
        "session_result": session_result
      })

2. 获取某电影的所有场次信息

获取该电影下的日期信息,遍历所有日期,调用上面所写的获取当天数据方法获取所有天数的场次数据添加至列表当中返回

image.png
 #所有场次天数
    days = movie.xpath('.//div[contains(@class, "plist-container")]')
    for day in days:
        result.append(getToday(day, time_list, days.index(day)))
        # print(movie_result)
    movie_session.append({
        "movie_name": movie_name,
        "star": star,
        "result": result
    })

3. 遍历所有电影并进行数据添加

对电影对象进行遍历,调用上述方法获取数据并写入文件

movies_list = html.xpath('//div[contains(@class, "show-list")]')

    #每一部电影数据
    for movie in movies_list:
        tmp_result.append(get_MovieData(movie)[0])
    with open('files/' + cinema_name + '.json', 'a+', encoding='utf-8') as f:
        f.write(json.dumps(tmp_result, ensure_ascii=False, indent=2))
image.png

相关文章

  • 猫眼电影场次信息获取并保存至json

    这回我们具体的对数据获取进行介绍,页面中不同电影、日期的场次信息都是不同的,所以我们需要分级获取,我们按照如下形式...

  • 爬取猫眼电影

    针对构建的电影购票功能获取相应数据,主要获取:电影信息+影院信息+场次信息,都不难获取,主要是场次信息方面的构造、...

  • --save-dev

    --save:将保存配置信息至package.json -dev:保存至package.json的devDepen...

  • Spider_maoyantop100

    初涉爬虫,爬取猫眼电影的top100相关信息(下载电影海报到本地指定路径,并抓取电影名称、主演和上映时间以json...

  • 三阶段day26-爬虫介绍

    爬取猫眼网站的电影信息 爬取页面信息的基本思路是: 1、获取页面信息2、解析页面信息并匹配自己想要爬取的数据3、组...

  • Python爬取电影信息并保存至Excel

    在简书看过一篇文章Python爬虫入门 | 7 分类爬取豆瓣电影,解决动态加载问题,在此基础上我想完成如下3件事:...

  • 2017/4/13 周四--打印通告函

    自定义对象用于保存通知函填写信息 实现编辑页面Controller实现获取页面保存Json,及新建对象保存。 Su...

  • 浏览器使用localStorage本地存储

    1.通过local Storage 本地保存JSON字符串 2.localStorage中获取保存的信息 3.删除...

  • Python爬虫小练习——正则表达式爬取猫眼电影Top100榜单

    简介 目标:利用python爬虫,获取猫眼电影Top100榜单数据(排名、电影名、演员、上映时间及国家、评分),并...

  • python爬取猫眼电影top100榜单

    项目目标:使用 requests 库和正则表达式爬取猫眼电影 Top100 榜单,并保存为文件 目标站点分析 电影...

网友评论

      本文标题:猫眼电影场次信息获取并保存至json

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