python爬取豆瓣top250的电影数据并存入excle
爬取网址: https://movie.douban.com/top250
一:爬取思路(新手可以看一下) :
1:定义两个函数,一个get_page函数爬取数据,一个save函数保存数据,mian中向get_page函数传递url和运save函数接受get_page函数传递过来的值
2:准备动手
二:爬取前的准备
我是pyhton3 pycharm
需要准备的库 requests,lxml,xlwt
requests解析url
lxml解析网页,获取数据
xlwt 向excle写入数据
三:代码实现(这里只是为了保存数据做演示,没有对数据做处理)
import requests
from lxml import etree
import xlwt all_list=[]#传入save函数的结果集
def get_page(url):
res=requests.get(url)
if res.status_code==200:
html=etree.HTML(res.content)
all=html.xpath('//div[@class="article"]/ol/li')#所有的数据都在li标签下,我们一这个为总节点
for detail in all:
title=detail.xpath('.//div[@class="hd"]/a/span[1]/text()')[0]#电影名字
score=detail.xpath('.//span[@class="rating_num"]/text()')[0]#评分
comment_sum=detail.xpath('.//div[@class="star"]/span[4]/text()')[0]#评论人数
quote=detail.xpath('.//p[@class="quote"]/span/text()')#引言 由于有的电影没有引言,不判断会报错
if len(quote)==0:
quote='暂无引言'
else:
quote=quote[0]
list=[]
list.append(title)
list.append(score)
list.append(comment_sum)
list.append(quote)
print(list) #输出结果在下面
all_list.append(list)#将所有的list都添加进一个list
else:
print(res.status_code1) def save(lists):
book=xlwt.Workbook()
sheet=book.add_sheet('douban')
head = ['名字', '评分', '评价人数', '引言']
for h in range(len(head)):
sheet.write(0, h, head[h])#写一个表头
row=1#控制行
for list in lists:
print(list)
col=0#控制列
for s in list:#循环我们的list的值
sheet.write(row,col,s)
col+=1
row+=1
book.save("doubantop250.xls")
if __name__ == '__main__':
#0 25 50 75
for x in range(0,11):
if x==0:
url='https://movie.douban.com/top250?start=0'
get_page(url)
else:
x=x*25
url='https://movie.douban.com/top250?start='+str(x)
get_page(url)
save(all_list)#讲结果集传入save函数
输出的list截图:

如果有小伙伴不知道为什么要这样存放数据的话可以看下这个网址:https://www.cnblogs.com/nancyzhu/p/8401552.html,我存入excle的思路就是来源于这个网址,写的真的很容易理解 我喜欢.所以本文就不在做过多赘述,有问题的或者觉得有更好的方法的可以一起交流一下 欢迎加入我的群一起交流: 644080474 嘿嘿
python爬取豆瓣top250的电影数据并存入excle的更多相关文章
- Python 爬取豆瓣TOP250实战
学习爬虫之路,必经的一个小项目就是爬取豆瓣的TOP250了,首先我们进入TOP250的界面看看. 可以看到每部电影都有比较全面的简介.其中包括电影名.导演.评分等. 接下来,我们就爬取这些数据,并将这 ...
- 简单的爬虫例子——爬取豆瓣Top250的电影的排名、名字、评分、评论数
爬取思路: url从网页上把代码搞下来bytes decode ---> utf-8 网页内容就是我的待匹配的字符串ret = re.findall(正则,待匹配的字符串), ret 是所有匹配 ...
- 爬取豆瓣top250音乐 时长 出版商 存入Mongo数据库
import requestsfrom lxml import etreeimport reimport pymongoimport time client = pymongo.MongoClient ...
- 零基础爬虫----python爬取豆瓣电影top250的信息(转)
今天利用xpath写了一个小爬虫,比较适合一些爬虫新手来学习.话不多说,开始今天的正题,我会利用一个案例来介绍下xpath如何对网页进行解析的,以及如何对信息进行提取的. python环境:pytho ...
- 基础爬虫,谁学谁会,用requests、正则表达式爬取豆瓣Top250电影数据!
爬取豆瓣Top250电影的评分.海报.影评等数据! 本项目是爬虫中最基础的,最简单的一例: 后面会有利用爬虫框架来完成更高级.自动化的爬虫程序. 此项目过程是运用requests请求库来获取h ...
- python爬取豆瓣电影Top250(附完整源代码)
初学爬虫,学习一下三方库的使用以及简单静态网页的分析.就跟着视频写了一个爬取豆瓣Top250排行榜的爬虫. 网页分析 我个人感觉写爬虫最重要的就是分析网页,找到网页的规律,找到自己需要内容所在的地方, ...
- Python爬取豆瓣电影top
Python爬取豆瓣电影top250 下面以四种方法去解析数据,前面三种以插件库来解析,第四种以正则表达式去解析. xpath pyquery beaufifulsoup re 爬取信息:名称 评分 ...
- 利用Python爬取豆瓣电影
目标:使用Python爬取豆瓣电影并保存MongoDB数据库中 我们先来看一下通过浏览器的方式来筛选某些特定的电影: 我们把URL来复制出来分析分析: https://movie.douban.com ...
- requests爬取豆瓣top250电影信息
''' 1.爬取豆瓣top250电影信息 - 第一页: https://movie.douban.com/top250?start=0&filter= - 第二页: https://movie ...
随机推荐
- Python package和folder
在Python项目里面的区分,按照如下规定进行: 1.严格区分包和文件夹.包的定义就是包含__init__.py的文件夹. 如果没有__init__.py,那么就是普通的文件夹. 2.导入packag ...
- 牛客网Java刷题知识点之构造函数是什么、一般函数和构造函数什么区别呢、构造函数的重载、构造函数的内存图解
不多说,直接上干货! 构造函数是什么? 构建创造对象时调用的函数. 构造函数是一种特殊的函数,用来在对象实例化时初始化对象的成员变量. 注意: 创建对象都必须要通过构造函数初始化. 构造函数的特点 ...
- ZK配置文件
The number of milliseconds of each tick, 最小时间单位,很多运行时的时间 #间隔都是使用tickTime的倍数来表示的,例如initLimit=10就是tick ...
- 《从0到1学习Flink》—— Flink Data transformation(转换)
前言 在第一篇介绍 Flink 的文章 <<从0到1学习Flink>-- Apache Flink 介绍> 中就说过 Flink 程序的结构 Flink 应用程序结构就是如上图 ...
- SpringBoot | 第十八章:web应用开发之WebJars使用
前言 前面一章节我们主要讲解了关于文件上传的两种方式.本章节继续web开发的相关知识点.通常对于web开发而言,像js.css.images等静态资源版本管理是比较混乱的,比如Jquery.Boots ...
- java环境安装(win7)
首先,你应该已经安装了 java 的 JDK 了,笔者安装的是:jdk-7u13-windows-x64 接下来主要讲怎么配置 java 的环境变量,也是为了以后哪天自己忘记了做个备份 1.进入&qu ...
- 30分钟学会React Hook, Memo, Lazy
我们来学习React 16.8里的新特性. 1. 自行配置好React的环境,推荐你使用Create React APP, 你也可以下载本文档Zip解压到本地直接运行. https://github. ...
- 如何下载最新的固件到Pixhawk
连接Pixhawk至电脑 当Mission Planner 已经安装至你的电脑上,使用micro USB数据线连接pixhawk到您的计算机上. 使用一个USB端口直接在您的计算机上,不要用USB集线 ...
- cf1040E. Network Safety(并查集)
题意 题目链接 一张图,n个点,m条边,每个点有个权值x,x<=1e18.如果一条边的两个端点不一样,那么这条边是安全的,开始时所有边都是安全的. 现在有一个病毒y,病毒可以入侵任意的点,入侵一 ...
- ps钢笔工具路径问题
问题描述:ps钢笔工具画出路径后用文字工具打字 路径出现一个空心圆点字,不能在路径上打字或者无法确认终止的位置. 解决:1.如果要在路径上全都打满字,要将文字对齐改为左对齐,2.如果要实现自定义结束位 ...