python爬取豆瓣电影TOP250数据


Posted in Python onMay 23, 2021

在执行程序前,先在MySQL中创建一个数据库"pachong"。

import pymysql
import requests
import re


#获取资源并下载
def resp(listURL):
    #连接数据库
    conn = pymysql.connect(
        host = '127.0.0.1',
        port = 3306,
        user = 'root',
        password = '******',  #数据库密码请根据自身实际密码输入
        database = 'pachong', 
        charset = 'utf8'
    )

    #创建数据库游标
    cursor = conn.cursor()

    #创建列表t_movieTOP250(执行sql语句)
    cursor.execute('create table t_movieTOP250(id INT PRIMARY KEY 												auto_increment NOT NULL ,movieName VARCHAR(20) NOT NULL 									,pictrue_address VARCHAR(100))')

    try:
        # 爬取数据
        for urlPath in listURL:
            # 获取网页源代码
            response = requests.get(urlPath)
            html = response.text

            # 正则表达式
            namePat = r'alt="(.*?)" src='
            imgPat = r'src="(.*?)" class='

            # 匹配正则(排名【用数据库中id代替,自动生成及排序】、电影名、电影海报(图片地址))
            res2 = re.compile(namePat)
            res3 = re.compile(imgPat)
            textList2 = res2.findall(html)
            textList3 = res3.findall(html)

            # 遍历列表中元素,并将数据存入数据库
            for i in range(len(textList3)):
                cursor.execute('insert into t_movieTOP250(movieName,pictrue_address) 									VALUES("%s","%s")' % (textList2[i],textList3[i]))

        #从游标中获取结果
        cursor.fetchall()

        #提交结果
        conn.commit()
        print("结果已提交")

    except Exception as e:
        #数据回滚
        conn.rollback()
        print("数据已回滚")

    #关闭数据库
    conn.close()

#top250所有网页网址
def page(url):
    urlList = []
    for i in range(10):
        num = str(25*i)
        pagePat = r'?start=' + num + '&filter='
        urL = url+pagePat
        urlList.append(urL)
    return urlList


if __name__ == '__main__':
    url = r"https://movie.douban.com/top250"
    listURL = page(url)
    resp(listURL)

结果如下图:

python爬取豆瓣电影TOP250数据

python爬取豆瓣电影TOP250数据

以上就是我的分享,如果有什么不足之处请指出,多交流,谢谢!

以上就是python爬取豆瓣电影TOP250数据的详细内容,更多关于python爬取豆瓣电影的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python编写生成验证码的脚本的教程
May 04 Python
详解Python编程中基本的数学计算使用
Feb 04 Python
用python记录运行pid,并在需要时kill掉它们的实例
Jan 16 Python
python使用sqlite3时游标使用方法
Mar 13 Python
python开发游戏的前期准备
May 05 Python
python批量爬取下载抖音视频
Jun 17 Python
python标记语句块使用方法总结
Aug 05 Python
python rsync服务器之间文件夹同步脚本
Aug 29 Python
python基于FTP实现文件传输相关功能代码实例
Sep 28 Python
Pytoch之torchvision.transforms图像变换实例
Dec 30 Python
简单了解django处理跨域请求最佳解决方案
Mar 25 Python
Python高并发和多线程有什么关系
Nov 14 Python
基于Python绘制子图及子图刻度的变换等的问题
聊聊pytorch测试的时候为何要加上model.eval()
May 23 #Python
PyTorch 如何自动计算梯度
May 23 #Python
解决numpy和torch数据类型转化的问题
May 23 #Python
Python 用户输入和while循环的操作
May 23 #Python
解决Tkinter中button按钮未按却主动执行command函数的问题
May 23 #Python
python tkinter Entry控件的焦点移动操作
May 22 #Python
You might like
JAVA/JSP学习系列之四
2006/10/09 PHP
js限制文本框只能输入数字(正则表达式)
2012/07/15 Javascript
getComputedStyle与currentStyle获取样式(style/class)
2013/03/19 Javascript
自动最大化窗口的Javascript代码
2013/05/22 Javascript
用javascript判断IE版本号简单实用且向后兼容
2013/09/11 Javascript
推荐JavaScript实现继承的最佳方式
2014/11/11 Javascript
jQuery中DOM树操作之使用反向插入方法实例分析
2015/01/23 Javascript
轻量级网页遮罩层jQuery插件用法实例
2015/07/31 Javascript
深入解析JavaScript中的数字对象与字符串对象
2015/10/21 Javascript
JS取模、取商及取整运算方法示例
2016/10/13 Javascript
Chrome不支持showModalDialog模态对话框和无法返回returnValue问题的解决方法
2016/10/30 Javascript
详解Vue使用 vue-cli 搭建项目
2017/04/20 Javascript
JavaScript中常见的八个陷阱总结
2017/06/28 Javascript
关于ES6箭头函数中的this问题
2018/02/27 Javascript
koa socket即时通讯的示例代码
2018/09/07 Javascript
Vue $emit $refs子父组件间方法的调用实例
2018/09/12 Javascript
在Vue环境下利用worker运行interval计时器的步骤
2019/08/01 Javascript
谈谈IntersectionObserver懒加载的具体使用
2019/10/15 Javascript
微信小程序实现可长按移动控件
2020/11/01 Javascript
[35:55]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.11
2020/12/13 DOTA
python机器学习理论与实战(六)支持向量机
2018/01/19 Python
Python后台开发Django会话控制的实现
2019/04/15 Python
Python用字典构建多级菜单功能
2019/07/11 Python
在SQLite-Python中实现返回、查询中文字段的方法
2019/07/17 Python
Flask框架单例模式实现方法详解
2019/07/31 Python
python爬虫实现获取下一页代码
2020/03/13 Python
Python偏函数Partial function使用方法实例详解
2020/06/17 Python
canvas因为图片资源不在同一域名下而导致的跨域污染画布的解决办法
2019/01/18 HTML / CSS
捷克体育用品购物网站:D-sport
2017/12/28 全球购物
KIKO MILANO俄罗斯官网:意大利领先的化妆品和护肤品品牌
2021/01/09 全球购物
银行内勤岗位职责
2014/04/09 职场文书
群众路线党员自我评议范文2014
2014/09/24 职场文书
撤诉状格式范本
2015/05/19 职场文书
装修公司管理制度
2015/08/05 职场文书
QT与javascript交互数据的实现
2021/05/26 Javascript
Python学习之异常中的finally使用详解
2022/03/16 Python