利用python2.7抓取豆瓣电影top250

1.任务说明

  • 抓取top100电影名称
  • 依次打印输出

2.网页解析

  • 要进行网络爬虫,利用工具(如浏览器)查看网页HTML文件的相关内容是很有必要,我使用的是Firefox浏览器,并安装了Firebug插件,

这个插件可以方便查看包括HTML在内许多内容

打开豆瓣电影排行榜top250网页,发现每页有25部电影,一共10页,其每一页url具有如下特征:

http://movie.douban.com/top250?start=0
http://movie.douban.com/top250?start=25
http://movie.douban.com/top250?start=50
http://movie.douban.com/top250?start=75
......
以此类推因此只需要利用循环对后面的0,25,...225处理即可。
  • 网页点击任何一个电影中文名,右击鼠标“查看元素”查看HTML源代码:
可以发现电影名称放在<span class="title"> </span>中,同时英文名也放在<span class="title"> </span>中。
可以利用正则表达式<span class="title">(.*)</span>匹配电影的中文名和英文名,但这里只想得到中文名,所以需要过滤英文名。
过滤方法可以利用find(str,pos_start,pos_end)函数实现,剔除英文名字里特有的特征:‘ ’和‘/’,详见代码。

3.代码实现

这里代码比较简单,因此就不用定义函数了。

 1 #!/usr/bin/python
 2 # -*- coding: utf-8 -*- #
 3 import requests,sys,re
 4 from bs4 import BeautifulSoup
 5
 6 reload(sys)
 7 sys.setdefaultencoding('utf-8')
 8 print '正在从豆瓣电影Top250抓取数据......'
 9
10 for page in range(10):
11     url='https://movie.douban.com/top250?start='+str((page-1)*25)
12     print '---------------------------正在爬取第'+str(page+1)+'页......--------------------------------'
13     html=requests.get(url)
14     html.raise_for_status()
15     try:
16         soup=BeautifulSoup(html.text,'html.parser')
17         soup=str(soup) # 利用正则表达式需要将网页文本转换成字符串
18         title=re.compile(r'<span class="title">(.*)</span>')
19         names=re.findall(title,soup)
20         for name in names:
21             if name.find('/')==-1: # 剔除英文名(英文名特征是含有'/')
22                 print name
23     except Exception as e:
24         print e
25 print '爬取完毕!'

由于水平有限,难免存在不足,欢迎大家斧正!

转载于:https://www.cnblogs.com/carpenterworm/p/6026274.html

python2.7抓取豆瓣电影top250相关推荐

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

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

  2. Python3 抓取豆瓣电影Top250

    利用 requests 抓取豆瓣电影 Top 250: import re import requestsdef main(url):global numheaders = {"User-A ...

  3. 爬虫脚本(抓取豆瓣电影Top250)

    运行环境:Windows7,python2.7.13 需求分析:爬取豆瓣电影网排行的Top250片名. 步骤: 1. 抓取网站源码. 2. 利用正则表达式提取片名. 3. 把电影片名保存到文本中. 4 ...

  4. python爬虫实例-运用requests抓取豆瓣电影TOP250(详解)

    目录 开发工具 目标 网页分析 正则匹配分析 代码实例 总结 开发工具 python版本: python-3.8.1-amd64 python开发工具: JetBrains PyCharm 2018. ...

  5. php采集豆瓣评分,抓取豆瓣电影TOP250的PHP代码

    搜索热词 下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. for ($start = 0; $start < 250; $start ...

  6. 不会写Python代码如何抓取豆瓣电影 Top 250

    说到爬虫,大多数人会想到用Python来做,毕竟简单好用,比如想抓取豆瓣电影top250 的所有电影数据. 简单的代码如下: import requests from bs4 import Beaut ...

  7. 【go语言爬虫】go语言爬取豆瓣电影top250

    一.需求分析 用go语言抓取 豆瓣电影top250 抓取url: https://movie.douban.com/top250 抓取字段:电影名称.评分.评价人数 二.运行: 正在抓取第0页-- 肖 ...

  8. 一起学爬虫——通过爬取豆瓣电影top250学习requests库的使用

    一起学爬虫--通过爬取豆瓣电影top250学习requests库的使用 学习一门技术最快的方式是做项目,在做项目的过程中对相关的技术查漏补缺. 本文通过爬取豆瓣top250电影学习python req ...

  9. python爬取豆瓣电影top250_用Python爬虫实现爬取豆瓣电影Top250

    用Python爬虫实现爬取豆瓣电影Top250 #爬取 豆瓣电影Top250 #250个电影 ,分为10个页显示,1页有25个电影 import urllib.request from bs4 imp ...

最新文章

  1. css position属性
  2. NS4146 D类音频放大电路
  3. 无主键的Hibernate配置
  4. mysql有那么多存储引擎_MySQL的多存储引擎架构
  5. Android 调试工具集合
  6. PHP经验总结 - 开发技巧分享
  7. 2019计算机B级考试题,【资格考试】2019最新整理-计算机等级考试一级B考试题分析.pdf...
  8. 10个用来处理键盘事件的JQuery插件和JS类库
  9. 唏嘘!又一家手机工厂关闭,一代机皇彻底退出中国制造
  10. h5难做吗_还在担心H5太难做?介绍一个H5制作工具给你!
  11. sql请求失败或服务器无即使响应,SQL2005无法启动SQL Server 请求失败或服务未及时响应等问题的解决方案...
  12. 常用的几个框架官网【前端 / 自用】
  13. 两个字节合并成一个16位short类型
  14. Ubuntu Desktop LTS - 开机数字小键盘
  15. 我在Python的艳阳里,大雪纷飞
  16. 机械之美——机械时期的计算设备
  17. 【学习OpenCV4】案例1:Windows OpenCV C++语言开发环境搭建
  18. Linux ARM平台开发系列讲解(网络篇) 2.3 Marvell 88EA6321/88EA6320 Switch 设备树的配置分析
  19. 小桥流水秒赞kyuan版 无后门
  20. 程序是如何运行的呢?

热门文章

  1. MySQL5.1升级到5.5注意事项
  2. Objective-C 2.0属性(Property)介绍
  3. C# .net 命名规范
  4. android 人生日历,android版人生日历日子怎么用 安卓版人生日历日子使用教程
  5. 隧道接口工具airtun-ng
  6. Visual Studio警告IDE0006的解决办法
  7. 自动渗透测试工具集APT2
  8. 固件分析工具Binwalk
  9. Xamarin.Forms中为WebView指定数据来源Source
  10. Xamarin iOS编写第一个应用程序创建工程