猫哥教你写爬虫 040--存储数据-作业
小作业:爬取猫眼电影top100, 保存
电影名
,排名
,评分
,主演
,封面图片
,上映时间
到数据库maoyan.com/board/4
代码
import requests, pymysql
from bs4 import BeautifulSoup
# 连接数据库
connection = pymysql.connect(host='localhost', user='root', password='root', port=3306)
# 创建游标
cursor = connection.cursor()
# 建库, 建表
def create_table():# 如果存在即删除数据库 maoyancursor.execute('drop database if exists maoyan')# 创建maoyan数据库, 字符集utf8cursor.execute('create database maoyan character set utf8')# 使用数据库cursor.execute('use maoyan')# 创建数据表movie, id主键, title电影名, score评分, img图片路径, actors主演, release_date上映日期, ranking排名cursor.execute('''create table movie(id int primary key auto_increment, title varchar(255) not null, score decimal(2,1) not null, img varchar(255) not null,actors varchar(255) not null,release_date varchar(20) not null,ranking int not null)''')# 提交sql语句, 增删改需要提交connection.commit()
# 获取电影信息
def get_movies():# https://maoyan.com/board/4?offset=0# 0,1,2,3,4,5,6,7,8,9for i in range(1):print(i)soup = BeautifulSoup(requests.get('https://maoyan.com/board/4?offset={}'.format(i*10)).text, 'html.parser')# 在dl里面找dd, 每个dd都保存了一部电影的信息for dd in soup.find('dl', class_='board-wrapper').find_all('dd'):# 电影标题title = dd.find('a')['title']# 电影的图片链接img = dd.find('img', class_='board-img')['data-src'].split('jpg')[0]+'jpg'# 电影的主演actors = dd.find('p', class_='star').text.strip()# 电影的评分score = dd.find('p', class_='score').text# 电影的排行ranking = dd.find('i').text# 电影的上映日期release_date = dd.find('p',class_="releasetime").text[5:15]# 插入数据库add_movies(title, img, actors, score, ranking, release_date)
# 把电影信息写入数据库
def add_movies(title, img, actors, score, ranking, release_date):# 拼接sql语句sql = "insert into movie(title, img, actors, score, ranking, release_date) values({},{},{},{},{},{})".format(repr(title), repr(img), repr(actors), score, ranking, repr(release_date))print(sql)# 执行cursor.execute(sql)# 提交connection.commit()
def query_movie():sql = "select * from movie"# 执行sqlcursor.execute(sql)# 获取所有数据res = cursor.fetchall()for i in res:print(i)
if __name__ == "__main__":create_table()get_movies()query_movie()
复制代码
快速跳转:
猫哥教你写爬虫 000--开篇.md
猫哥教你写爬虫 001--print()函数和变量.md
猫哥教你写爬虫 002--作业-打印皮卡丘.md
猫哥教你写爬虫 003--数据类型转换.md
猫哥教你写爬虫 004--数据类型转换-小练习.md
猫哥教你写爬虫 005--数据类型转换-小作业.md
猫哥教你写爬虫 006--条件判断和条件嵌套.md
猫哥教你写爬虫 007--条件判断和条件嵌套-小作业.md
猫哥教你写爬虫 008--input()函数.md
猫哥教你写爬虫 009--input()函数-人工智能小爱同学.md
猫哥教你写爬虫 010--列表,字典,循环.md
猫哥教你写爬虫 011--列表,字典,循环-小作业.md
猫哥教你写爬虫 012--布尔值和四种语句.md
猫哥教你写爬虫 013--布尔值和四种语句-小作业.md
猫哥教你写爬虫 014--pk小游戏.md
猫哥教你写爬虫 015--pk小游戏(全新改版).md
猫哥教你写爬虫 016--函数.md
猫哥教你写爬虫 017--函数-小作业.md
猫哥教你写爬虫 018--debug.md
猫哥教你写爬虫 019--debug-作业.md
猫哥教你写爬虫 020--类与对象(上).md
猫哥教你写爬虫 021--类与对象(上)-作业.md
猫哥教你写爬虫 022--类与对象(下).md
猫哥教你写爬虫 023--类与对象(下)-作业.md
猫哥教你写爬虫 024--编码&&解码.md
猫哥教你写爬虫 025--编码&&解码-小作业.md
猫哥教你写爬虫 026--模块.md
猫哥教你写爬虫 027--模块介绍.md
猫哥教你写爬虫 028--模块介绍-小作业-广告牌.md
猫哥教你写爬虫 029--爬虫初探-requests.md
猫哥教你写爬虫 030--爬虫初探-requests-作业.md
猫哥教你写爬虫 031--爬虫基础-html.md
猫哥教你写爬虫 032--爬虫初体验-BeautifulSoup.md
猫哥教你写爬虫 033--爬虫初体验-BeautifulSoup-作业.md
猫哥教你写爬虫 034--爬虫-BeautifulSoup实践.md
猫哥教你写爬虫 035--爬虫-BeautifulSoup实践-作业-电影top250.md
猫哥教你写爬虫 036--爬虫-BeautifulSoup实践-作业-电影top250-作业解析.md
猫哥教你写爬虫 037--爬虫-宝宝要听歌.md
猫哥教你写爬虫 038--带参数请求.md
猫哥教你写爬虫 039--存储数据.md
猫哥教你写爬虫 040--存储数据-作业.md
猫哥教你写爬虫 041--模拟登录-cookie.md
猫哥教你写爬虫 042--session的用法.md
猫哥教你写爬虫 043--模拟浏览器.md
猫哥教你写爬虫 044--模拟浏览器-作业.md
猫哥教你写爬虫 045--协程.md
猫哥教你写爬虫 046--协程-实践-吃什么不会胖.md
猫哥教你写爬虫 047--scrapy框架.md
猫哥教你写爬虫 048--爬虫和反爬虫.md
猫哥教你写爬虫 049--完结撒花.md
转载于:https://juejin.im/post/5cfc4adde51d45108126d20c
猫哥教你写爬虫 040--存储数据-作业相关推荐
- 猫哥教你写爬虫 046--协程-实践-吃什么不会胖
吃什么不会胖? 低热量食物 食物的数量有千千万,如果我们要爬取食物热量的话,这个数据量必然很大. 使用多协程来爬取大量的数据是非常合理且明智的选择 如果我们要爬取的话,那就得选定一个有存储食物热量信息 ...
- 猫哥教你写爬虫 006--条件判断和条件嵌套
流程控制 复仇者联盟3-无限战争(搜集宝石) python里面, 不需要使用;来结尾, 因为python是使用换行来结束一行代码的 if判断, 没有{}, python使用缩进来表示层级关系 if.. ...
- 猫哥教你写爬虫 002--作业-打印皮卡丘
作业 请你使用print()函数将下面的皮卡丘打印出来, 使用三种方式 へ /|/\7 ∠_// │ / /│ Z _,< / /`ヽ│ ヽ / 〉Y ` / /イ● 、 ● ⊂⊃〈 /() へ ...
- 猫哥教你写爬虫 005--数据类型转换-小作业
小作业 程序员的一人饮酒醉 请运用所给变量,使用**str()**函数打印两句话. 第一句话:1人我编程累, 碎掉的节操满地堆 第二句话:2眼是bug相随, 我只求今日能早归 number1 = 1 ...
- 猫哥教你写爬虫 004--数据类型转换-小练习
小练习, 改一下代码 word = '3.8' number = 1 sentence = '人工智障说:3.8+1等于' print(sentence+str(int(float(word)+num ...
- 猫哥教你写爬虫 037--爬虫-宝宝要听歌
戴上耳机, 这个世界与我无关... 让我们用音乐洗涤心灵吧... 我们从哪个网站爬取资源呢? 专治各种不服... 打开酷狗官网, 可以看到搜索框,我们要爬取的数据就是搜索歌曲后, 酷狗后台返回的歌曲列 ...
- 猫哥教你写爬虫 027--模块介绍
time模块 import time # 时间对象转美式时间字符串 print(time.asctime()) # Wed May 29 09:25:07 2019 print(time.asctim ...
- 猫哥教你写爬虫 000--开篇
写在前面 快速跳转: 猫哥教你写爬虫 000--开篇.md 猫哥教你写爬虫 001--print()函数和变量.md 猫哥教你写爬虫 002--作业-打印皮卡丘.md 猫哥教你写爬虫 003--数据类 ...
- OpenGL.Shader:志哥教你写一个滤镜直播客户端:仿3个抖音滤镜效果(4镜像/电击/灵魂出窍)
OpenGL.Shader:志哥教你写一个滤镜直播客户端(可能是结束篇) OpenGL.Shader基本的图像处理知识已经学习的7788了,所以这篇应该是滤镜直播客户端的最后一篇了,之后会出基于FFm ...
- OpenGL.Shader:志哥教你写一个滤镜直播客户端(5)视觉滤镜:对比度、曝光、马赛克
OpenGL.Shader:志哥教你写一个滤镜直播客户端(5) 上一章介绍了如何在渲染nv21流的时候进行滤镜的无缝切换,这章内容紧接上一章,介绍三种滤镜特效:对比度.曝光.马赛克,并介绍如何动态调节 ...
最新文章
- snp可视化之瀑布图
- OpenCV使用dnn从图像中解析人体部位的实例(附完整代码)
- 功率谱有什么用_马达品牌不同,功率一样,变频器互相不能用,是什么原因
- 关于流控器件和压控器件
- P4981-父子【数学,树】
- 数据科学入门与实战:Matplotlib绘图基础一
- 刘强东发新年信:过去一年我们异常艰难
- 群里又会python的吗_自从会了Python在群里斗图就没输过,Python批量下载表情包!...
- 从0-1背包问题到动态规划
- Pannellum:实例之全景图自动旋转
- 拓端tecdat|python安娜卡列妮娜词云图制作
- Hbase与传统关系型数据库对比
- Chrome启动参数大全
- 上海驾照科目三练习笔记
- linux搭建云存储服务,CentOS 6.3搭建个人私有云存储ownCloud
- 注释工具一键添加佛祖保佑永无BUG、神兽护体等注释图案
- 使用Quads绘制函数曲线
- php使用sqlserver
- 利用pdf2image,将pdf文件转换成图片
- 组合数求解与(扩展)卢卡斯定理