希望阅读本文的时候,你已经装好python环境。该程序用于爬取豆瓣电影数据,并将数据保存到mysql。

1.你需要在你的python中下载需要的模块,bs4,xlwt,以及pymysql

2.程序主要的步骤是分析网页,提取网页中的数据,存储。具体的mysql表结构如下:

3.python过程代码

获取网页内容

#得到一个指定url的网页内容
def askUrl(url):#代理,模拟浏览器发送请求,防止被检测为爬虫head = {"User-Agent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36"}request = urllib.request.Request(url , headers=head)html = ""try:response = urllib.request.urlopen(request)html = response.read().decode("utf-8")except urllib.error.URLError as e:if hasattr(e,"code"):print(e.code)if hasattr(e,"code"):print(e.reason) return html

分析网页并得到数据

#爬取网页
def getData(baseUrl):dataList = []for i in range(0,10):url = baseUrl + str(i * 25)html = askUrl(url)#解析数据soup = BeautifulSoup(html,"html.parser")for item in soup.find_all("div" , class_ = "item"):  #找div class属性为item的data = []  # 保存信息item = str(item)#正则查找指定字符串#链接link = re.findall(findLink,item)[0]  data.append(link)#图片imgSrc = re.findall(findImgSrc,item)[0]data.append(imgSrc)#标题titles = re.findall(findTitle,item)if(len(titles) == 2):cTitle = titles[0]data.append(cTitle)eTitle = titles[1].replace("/","")data.append(eTitle)else:data.append(titles[0])data.append("")#评分rating = re.findall(findRating,item)[0]data.append(rating)#评价人数judge = re.findall(findJudge,item)[0]data.append(judge)#标识inq = re.findall(findInq,item)if(len(inq) !=0):inq = inq[0].replace("。","")data.append(inq)else:data.append("")#内容bd = re.findall(findBd,item)[0]bd = re.sub('<br(\s+)?/>(\s+)?',"",bd)   #数据整理,替换不要的内容#去掉前后空格并加入列表data.append(bd.strip())#加入列表dataList.append(data)     return dataList

数据存储

#存储数据到Mysql
def saveDataToMysql(dataList):# 打开数据库连接(运行程序记得修改这个配置)db = pymysql.connect(host='localhost',user='root',password='123456',database='test')# 使用cursor()方法获取操作游标 cursor = db.cursor()#批量插入cursor.executemany('insert into douban_movie(link,img_src,chinese_title,foreign_title,rating,judge_num,inq,content) values(%s,%s,%s,%s,%s,%s,%s,%s)', dataList)       try:# 提交到数据库执行db.commit()except:# 如果发生错误则回滚db.rollback()# 关闭数据库连接db.close()

4.执行后的mysql结果:

如果需要完整源码的可以上github自取,地址:
python豆瓣电影top数据爬取,并保存至mysql

每天进步一点点,开心也多一点点

Python爬取豆瓣top榜电影相关推荐

  1. Python爬取豆瓣热映电影

    Python爬取豆瓣热映电影 # encoding: utf-8import requests from lxml import etree# 1. 将目标网站上的页面抓取下来 headers = { ...

  2. 用Python爬取豆瓣首页所有电影名称、每部电影影评及生成词云

    1.爬取环境: window 7 Chrome 浏览器 注册豆瓣.注册超级鹰 2.安装第三方库:安装第三方库: 主程序用到的库有 import sys, time import pytesseract ...

  3. 爬取豆瓣Top 250电影信息、下载图片、存储到Excel,快来试试吧!

    写的第一个还算有点复杂的Python的程序,有点意思,感觉Python的实用性和开发效率实在很优秀,O(∩_∩)O哈哈~ 源代码在最后,有兴趣的可以试试跑一下. 爬虫地址豆瓣电影 Top 250. 文 ...

  4. python爬取豆瓣图书榜单 并存放数据库心得

    最近javaweb 项目存放图书的数据库存放的图书太少 决定去豆瓣榜单 爬取一些数据 首先是爬取网页得到数据 以字典类型先储存下来 贴上代码 def init(self, keyword): self ...

  5. Python爬取豆瓣Top250的电影

    流程图如下: 爬取网页-解析网页-存储数据到Excel和数据库中 源代码如下: 如果被豆瓣封Ip(一般被封第二天就解封了),可以自己设置代理Ip,或者自己登录账号后将Cookie放到header中. ...

  6. python爬取豆瓣书籍、电影等搜索结果,并解析html转成json格式

    本文以豆瓣首页搜索图书.电影等结果页面为例,使用python的BeautifulSoup解析页面内标题.作者.出版社.评分.简介.缩略图等内容,并转成json格式进行存储. 声明:本文仅作学习pyth ...

  7. python爬取豆瓣电影榜单

    python爬取豆瓣电影榜单 python爬取豆瓣电影榜单并保存到本地excel中,以后就不愁没片看了. 目标 确定我们想要抓取的电影的相关内容. 抓取豆瓣top250电影的排名.电影名.评价(总结很 ...

  8. python爬取豆瓣电影评论_python 爬取豆瓣电影评论,并进行词云展示及出现的问题解决办法...

    def getHtml(url): """获取url页面""" headers = {'User-Agent':'Mozilla/5.0 ( ...

  9. python 爬取豆瓣top100电影页面

    python 爬取豆瓣top100电影页面 运行结果截图: 代码: (原网站:https://movie.douban.com/top250) 1.将页面保存 避免多次访问 (登陆状态需页面cooki ...

  10. 利用python爬取豆瓣电影top250

    利用python爬取豆瓣电影top250: 注:本内容只是作为个人学习记录 1.业务分析 进入网页https://movie.douban.com/top250 可以看见每部电影都呈现在眼前,点击电影 ...

最新文章

  1. oracle 计算公式解析,用PL/SQL如何实现公式解析计算
  2. 用unity制作简单的太空游戏(1):简单飞船控制
  3. spark出现bytes consumed error的问题
  4. 升降压斩波电路matlab,升降压直流斩波电路及matlab仿真.doc
  5. Flask爱家租房--房屋管理(搜索房屋列表)
  6. miniblink载入html,winform使用miniblink展示html(全屏)
  7. node.js中获取请求当前页的前一页URL地址
  8. 08TensorFlow2.0基础--8.5张量运算
  9. 【三维路径规划】基于matlab RRT_Star算法三维路径规划【含Matlab源码 1571期】
  10. 深度学习:人脸识别算法孪生网络(Siamese Network)
  11. php 126怎么设置发送邮箱验证码,邮箱发送验证码(示例代码)
  12. SATI阅读重点有哪些?
  13. Unity3D 学习笔记 —— Tween对象的实现与动作管理
  14. 【ncnn】源码阅读理解(三)——blobs
  15. Android系统控件获取自定义属性
  16. 计算机学术为啥分要比专硕低那么多,专硕,凭什么是鄙视链最底端的一群人
  17. 基于人工势场法的二维平面内无人机的路径规划的matlab仿真,并通过对势场法改进避免了无人机陷入极值的问题
  18. 【复变函数与积分变换】05. 留数
  19. Apple Open Source
  20. HTTP缓存机制和原理

热门文章

  1. 网络安全技能竞赛通关教程
  2. DirectX12(D3D12)基础教程(一)——基础教程
  3. form表单提交到controller时出现404的尴尬问题(或链接不到.action、链接不到.do跳404的问题)
  4. 用matlab求得矩阵的最大特征值
  5. BE-Gradient 微流控芯片用于胶质母细胞瘤的研究
  6. 利用python下载视频
  7. 启动mysql错误解决方案
  8. Pandas: Drop函数(Dataframe删除指定行列)
  9. iOS 制作圆形头像图片
  10. 计算机桌面图片打不开显示内存不足,windows照片查看器无法显示此图片,因为计算机上的可用内存可能不足解决方法...