爬虫案例-爬取某猫的电影数据

1.爬取的代码

import requests
import time
import random
import hashlib
import pandas as pd

url = "https://piaofang.maoyan.com/dashboard-ajax?"

header= {
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0"
}
#时间戳
time = str(int(time.time()*1000))
#数字
num = random.randint(1, 1000)
#原始字符串
data = f"method=GET&timeStamp={time}&User-Agent=TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEzMy4wLjAuMCBTYWZhcmkvNTM3LjM2IEVkZy8xMzMuMC4wLjA=&index={num}&channelId=40009&sVersion=2&key=A013F70DB97834C0A5492378BD76C53A"
#加密计算MD5哈希值
md5_hash = hashlib.md5(data.encode()).hexdigest()

param= {
    "orderType": 0,
    "uuid": "194fa637589c8-0c3f722a89eccf-4c657b58-1fa400-194fa637589c8",
    "timeStamp": {time},
    "User-Agent": "TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEzMy4wLjAuMCBTYWZhcmkvNTM3LjM2IEVkZy8xMzMuMC4wLjA=",
    "index": {num},
    "channelId": 40009,
    "sVersion": 2,
    "signKey": {md5_hash},
    "WuKongReady": "h5"
}

request = requests.get(url,headers=header,params=param)
print(request.json())

# 提取电影数据
movie_data = []
for index in request.json()["movieList"]["data"]['list']:
    movie_info = {
        "电影名称": index["movieInfo"]["movieName"],
        "总票房": index["sumBoxDesc"],
        "上映信息": index["movieInfo"]["releaseInfo"],
        "票房占比": index["splitBoxRate"],
        "场次": index["showCount"]
    }
    movie_data.append(movie_info)

print(movie_data)
# 将数据转换为 DataFrame
df = pd.DataFrame(movie_data)

# 保存到 Excel 文件
df.to_excel(r"C:\Users\zzx\Desktop\movie_data2.xlsx", index=False)

print("数据已保存到 movie_data.xlsx")

2.效果图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

路来了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值