豆瓣是一个社区网站,创立于2005年3月6日。该网站以书影音起家,提供关于书籍,电影,音乐等作品信息,其描述和评论都是由用户提供的,是Web2.0网站中具有特色的一个网站。
豆瓣电影top250网址:https://movie.douban.com/top250?start=0&filter=
BeautifulSoup解析提取信息的具体过程请看BeautifulSoup爬取豆瓣电影top250信息 ,我在其中具体讲解了BeautifulSoup的用法,下面的内容是我把它输出的内容写入Excel表格。

把上面的信息改为写进表格,源码如下:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import re
import urllib.request
from bs4 import BeautifulSoup
import xlwturls = "https://movie.douban.com/top250"
html = urllib.request.urlopen(urls).read()
soup = BeautifulSoup(html, "html.parser")
all_page=[]
print(u'网站名称:', soup.title.string.replace("\n", ""))# 定位代码范围、爬虫部分
def part(url):html = urllib.request.urlopen(url).read()soup = BeautifulSoup(html, "html.parser")for tag in soup.find_all(attrs={"class": "item"}):try:            ta=tag.find('em').string#print(u'豆瓣排名:', ta)name=tag.find('span').string        #print(u'中文名称:', name)English = tag.find_all('span')[1].get_text()yuanName = English.split('/')[1]#print(u'原名称:', yuanName)country = tag.p.get_text().split('/')[-2]#print(u'国家:', country)time = tag.p.get_text().split('\n')[2].split('/')[0].replace(" ", "")#print(u'上映时间:', time)Leixing = tag.p.get_text().split('\n')[2].split('/')[-1]#print(u'类型:', Leixing)# 电影评分# print tag.find_all('span')[4].get_text()      方法1(不建议使用,多处出错)price = tag.find_all(attrs={"class": "rating_num"})  # 方法2 sore = price[0].get_text()#print(u'评分:', sore)# 评价人数  方法1     (在第220名《我不是药神》网页错乱会导致出错)#valuation = tag.find_all('span')[-2].get_text()#regex = re.compile(r"\d+\.?\d*")  # 使用正则表达式保留数字#people = regex.findall(valuation)[0]#print(u'评价人数:',people)# 评价人数   方法2(节点重新定位,建议使用)for peo in tag.find_all(attrs={"class":"star"}):  valuation = peo.find_all('span')[-1].get_text()regex = re.compile(r"\d+\.?\d*")people = regex.findall(valuation)[0]#print(u'评价人数:',people)# 导演及主演join = tag.p.next_element  # p的后节点role =  join.replace("\n", "").replace(" ", "")#print(role)introduce = tag.a.get('href')#print(u'剧情简介:', introduce)img = tag.img.get('src')#print(u'图片地址:',img)lab = tag.find_all(attrs={"class": "other"})lable = lab[0].get_text()#print(u'影片标签:', lable)#print()page=[ta,name,yuanName,country,time,Leixing,sore,people,role,introduce,img,lable]all_page.append(page)# print(all_page)except IndexError:passif __name__ == '__main__':i = 0while i < 10:print(u'网页当前位置:', (i + 1))num = i * 25url = 'https://movie.douban.com/top250?start=' + str(num) + '&filter='part(url)book = xlwt.Workbook(encoding='utf-8')sheet = book.add_sheet('电影排名表')head = ['豆瓣排名','电影名', '原名称','国家','时间','类型','评分','评价人数','角色','介绍','图片地址','影片标签']for h in range(len(head)):sheet.write(0,h,head[h])j=1for list in all_page:k=0for data in list:#print(data)sheet.write(j,k,data)k=k+1j+=1book.save('豆瓣电影top250.xls')i = i + 1

写入表格的结果:

注意:

上面代码评价人数获取方法一运行会出现一个错:

出现的原因: 《我不是药神》模块缺少一个P便签中的<span> ,所有导致tag.find_all('span')[-2].get_text() 定位出现错乱,在此停止了运行,如图所示:

我重新用tag.find_all(attrs={"class":"star"})进行定位,精确模块查找!

源码解析内容详情:https://blog.csdn.net/ayouleyang/article/details/95719813

python BeautifulSoup爬取豆瓣电影top250信息并写入Excel表格相关推荐

  1. Python爬虫 爬取豆瓣电影TOP250

    Python爬虫 爬取豆瓣电影TOP250 最近在b站上学习了一下python的爬虫,实践爬取豆瓣的电影top250,现在对这两天的学习进行一下总结 主要分为三步: 爬取豆瓣top250的网页,并通过 ...

  2. python爬取豆瓣电影top250并保存为xlsx_python抓取豆瓣电影Top250数据并写入Excel

    douban python抓取豆瓣电影Top250数据并写入Excel 1.将目标网站上的页面抓取下来 2.将抓取下来的数据根据一定的规则进行提取 create table `tb_movie`( i ...

  3. Python爬虫爬取豆瓣电影Top250

    爬虫爬取豆瓣Top250 文章目录 爬虫爬取豆瓣Top250 完整代码 第一步获取整个网页并以html来解析 正则表达式来匹配关键词 所有信息写入列表中 存入Excel中 效果如图 本文学习自B站UP ...

  4. 杀鸡用用牛刀 scrapy框架爬取豆瓣电影top250信息

    文章目录 一.分析网页 二.scrapy爬虫 三.处理数据 原文链接:https://yetingyun.blog.csdn.net/article/details/108282786 创作不易,未经 ...

  5. python爬取豆瓣电影top250的代码_Python爬虫——爬取豆瓣电影Top250代码实例

    利用python爬取豆瓣电影Top250的相关信息,包括电影详情链接,图片链接,影片中文名,影片外国名,评分,评价数,概况,导演,主演,年份,地区,类别这12项内容,然后将爬取的信息写入Excel表中 ...

  6. python爬取豆瓣电影top250编码_Python学习日记1| 用python爬取豆瓣电影top250

    今天是3.17号. 离毕业论文开题只剩下不到15天,自己这边还不知道要写什么好,问了导师,导师给的范围超级广泛,实在是想吐槽.想了几天,决定了要尽快给老师说自己的想法和方向,做什么还是靠自己比较靠谱. ...

  7. Python爬取豆瓣电影top250的电影信息

    Python爬取豆瓣电影top250的电影信息 前言 一.简介 二.实例源码展示 小结 前言 相信很多小伙伴在学习网络爬虫时,老师们会举一些实例案例讲解爬虫知识,本文介绍的就是经典爬虫实际案例–爬取豆 ...

  8. 源码大公开!Python爬取豆瓣电影Top250源代码,赶紧收藏!

    哈喽~大家好,我是恰恰.不知道是不是有很多小伙伴跟我一样,很喜欢看电影,尤其是那种别人推荐的豆瓣高分电影,所以学Python就有一个好处,用Python爬取豆瓣电影那是分分钟的事,再也不用因为有些电影 ...

  9. python爬取豆瓣电影top250_Python爬虫——爬取豆瓣电影Top250代码实例

    利用python爬取豆瓣电影Top250的相关信息,包括电影详情链接,图片链接,影片中文名,影片外国名,评分,评价数,概况,导演,主演,年份,地区,类别这12项内容,然后将爬取的信息写入Excel表中 ...

最新文章

  1. 【Java 并发编程】线程操作原子性问题 ( 问题业务场景分析 | 使用 synchronized 解决线程原子性问题 )
  2. docker部署resin应用
  3. 1603 限高二叉排列树(计数DP)
  4. python 字符ab+字符c 2_python入门 之 字符串(二)
  5. e会学中C语言课程考试答案,管理信息系统期末考试A试卷答案卷
  6. .Net Core控制台应用加载读取Json配置文件
  7. python celery定时任务_Celery(四)定时任务
  8. bash快捷键(防忘)
  9. iMazing与iTunes 两款iOS设备管理器区别 在备份操作上的对比
  10. ASO优化:教你学会如何选词,技巧有哪些?
  11. java读取服务器上文件,java 读取linux服务器上文件
  12. 机器学习实践—基于Scikit-Learn、Keras和TensorFlow2第二版—第2章 端到端机器学习项目实践
  13. STM32中 利用PWM控制步进电机,ARR与PSC值的设定
  14. MyEclipse中常用的查找快捷键
  15. Win7 EFS 加密文件图解
  16. [python]一个特别好的学习python网站
  17. HMACSHA512
  18. layui表格点击按钮下方新增加空白行
  19. html的div双线边框,设置div边框
  20. speedoffice使用方法-Word如何分栏

热门文章

  1. 苹果7【】闪存测试软件,教你如何查看自己iPhone手机的闪存
  2. 如何在自己的电脑上安装cdo
  3. 国产网络损伤仪SandStorm -- 基本概念:什么是仿真引擎
  4. 《计算机操作系统》部分习题与解答
  5. 通过注册表删除右键中vs2019 的项目
  6. day01 - jQuery
  7. 【愚公系列】2023年06月 网络安全(交通银行杯)-银河信号
  8. GJB 质量分析报告(模板)
  9. OpenMP 不允许使用 != 操作
  10. 泛域名https证书简介