python爬取豆瓣网的电影列表,详细信息及评分,javaweb,echarts分析展示数据

本文介绍了如何使用Python爬取豆瓣网的电影列表,包括电影类型、详细信息和评分,并将数据存储到MySQL数据库。之后,通过Java Web实现数据的web展示,利用Echarts进行数据分析和展示。
摘要由CSDN通过智能技术生成

web界面展示(代码末尾下载)

在这里插入图片描述
在这里插入图片描述

爬取数据

登录豆瓣

爬取次数过多,豆瓣会限制访问,只能采取登录,获取cookie

#登录 获取cookie
def login():
        data1 = {
   
                'ck': '',
                'name': '豆瓣账号',
                'password': '密码',
                'remember': 'false',
                'ticket': ''
        }
        header = {
   
                "Host": "accounts.douban.com",
                "Origin": "https://accounts.douban.com",
                "Referer": "https://accounts.douban.com/passport/login?redir=https%3A%2F%2Fwww.douban.com%2Fgroup%2Ftopic%2F110169492%2F",
                "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:79.0) Gecko/20100101 Firefox/79.0",
                "X-Requested-With": "XMLHttpRequest"
        }
        url_basic = 'https://accounts.douban.com/j/mobile/login/basic'
        s = requests.session()
        s.post(url_basic, headers=header, data=data1)
        return  s
 s = login()

创建数据库连接

#创建数据库连接
def getDb():
        return pymysql.connect(host="localhost",port=3306,user="root",password="123456",db="movie",charset="utf8")

爬取电影的类型

在这里插入图片描述

爬取电影的 类型并存入数据库中

#爬取电影类型
def getTags():
        db = getDb()
        url = "https://movie.douban.com/j/search_tags?type=movie&source=";
        header1 = {
   
                "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36"
        }
        resp = s.get(url, headers=header1)
        data = resp.json()
        list = data["tags"]
        cursor = db.cursor()
        # 存入数据库中
        for info in list:
                # 使用cursor()方法创建一个游标对象
                # 使用execute()方法执行SQL语句
                cursor.execute("insert into movie_type(name) values(%s)",
                               info)
                db.commit()
        # 关闭游标和数据库的连接
        cursor.close()

        db.close()

爬取电影信息

需要传入电影的类型id,以及类型名

def getmoviesInfo(type_id,name):
        print(
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值