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 ...
随机推荐
- (转)/etc/sysctl.conf 调优 & 优化Linux内核参数
/etc/sysctl.conf 调优 & 优化Linux内核参数 from: http://apps.hi.baidu.com/share/detail/15652067 http://ke ...
- (转)Linux命令详解-file
Linux命令详解-file 原文:https://www.cnblogs.com/Dodge/p/4278306.html file命令用来识别文件类型,也可用来辨别一些文件的编码格式.它是通过查看 ...
- discuz!X2头像无法显示解决方法
discuz x2刚刚发布,很多站长就迫不及待地将自己的论坛升级. 可是安装完discuz X2之后,就马上发现论坛会的头像都不见了,取而代之的是一个小红叉.会员也没有办法设置自己的头像. 各位站长们 ...
- win7,docker安装后,创建虚拟机分配不了ip错误 err: exit status 255
问题 win7装docker真麻烦,不如家里的win10爽.另外明明这是个很简单的操作,但是国内的解决方法有点落后,所以我写了个傻瓜式的. 有兴趣的可以直接看issue https://github. ...
- pycharm 更改字体and背景颜色
File-settings-Appearance&Behavior-Appearance-Theme File-settings-Editor-font
- 处理 wait millis 60009, active 50 ,maxactive 200 异常 过程
处理 wait millis 60009, active 50 ,maxactive 200 异常 过程2018年04月19日 16:48:46 守望dfdfdf 阅读数:1910 标签: druid ...
- Spring scope 配置
Scope 描述的是 Spring 容器如何新建Bean的实例,Spring的Scope有以下几种,通过@Scope来注解实现: 1. Singleton: 一个Spring容器中只有一个Bean的实 ...
- 《Head First 设计模式》之观察者模式——天气显示
观察者模式(Observer) ——在对象之间定义一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象都会收到通知,并自动更新. (出版者Subject+订阅者Observer=观察者模式) 特点 ...
- BZOJ2216: [Poi2011]Lightning Conductor(DP 决策单调性)
题意 题目链接 Sol 很nice的决策单调性题目 首先把给出的式子移项,我们要求的$P_i = max(a_j + \sqrt{|i - j|}) - a_i$. 按套路把绝对值拆掉,$p_i = ...
- JavaScript获取URL参数公共方法
写一个JavaScript获取URL参数的通用方法,可以把它放到常用方法的JS文件中调用,直接上代码例子,新手可以学习一下! <!DOCTYPE html> <html lang=& ...