Python 爬取豆瓣Top250并存入MySQL

该博客介绍了如何使用Python爬取豆瓣Top250电影信息,并将其存储到MySQL数据库中。首先,爬虫从指定网站抓取数据并保存为CSV文件,然后通过连接数据库,创建表并导入数据。爬虫执行顺序包括创建CSV文件、爬取数据、连接数据库并插入数据。文章提供了一些参考资料和注意事项,如源代码需要根据实际情况进行修改。
摘要由CSDN通过智能技术生成

参考资料(感谢大佬们分享的代码)

python3实战|python3爬取豆瓣top250备份到数据库:
https://blog.csdn.net/qq_36523839/article/details/71423984
Python爬取豆瓣电影TOP250并存入MySql数据库:
https://www.jianshu.com/p/e49bdec40cac
Python爬虫(3):爬取豆瓣电影TOP250:
https://zhuanlan.zhihu.com/p/26304106

爬取准备

需要导入的包

import uuid
import requests
from lxml import html
import re
import os
import pymysql

模块1:爬取数据并保存本地

解析网页源代码,寻找到网页的内容节点并加以提取。使用.xpath()获取所需元素,同时将数据以.csv文件格式保存至本地。(这一步应该是针对后面数据导入数据库而设计的,且当为一种数据库导入方法)最后加以循环,获取完整数据。

def get_douban_top250():
    print("--------")
    print('正在获取豆瓣TOP250影片信息并保存至本地...')
    index = 1
    page_count = 10
    for i in range(page_count):
    
      	## 内容节点
        url = 'https://movie.douban.com/top250?start={}&filter='.format(i * 25)
        url_content = requests.get(url).content
        doc = html.fromstring(url_content)
        for y in doc.xpath('//div[@class="info"]'):
        
        ...
        (xpath用于定位元素,text用于提取文本,用法可类比于路径设置,比如“D:\\...\\...\\douban.txt”,
        xpath则是,.xpath('//div[@class="info"]/div[@class="hd"]/a/span[@class="title"]/text()')[0]---
        ----指的是在所有info标签里,找到hd标签下的a标签里的span标签,并提取出内容)
        
        ## 获取影片名称
        name = y.xpath('div[@class="hd"]/a/span[@class="title"]/text()')[0]
        # print(name)
        ...
        ## 上映日期(replace用来替换字符,split用来切割字符串----注意需要对“\xa0”等特殊字符进行替换规范数据格式)
        dates = move_content[1].replace(" ", "").replace("\n", "").split("/")[0]
        dates = dates.replace("\xa0", "").replace("\xee", "").replace("\xf6", "").replace("\u0161", "").replace
  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值