成都Python培训
达内成都Python培训中心

15023458194

热门课程

成都Python培训 > Python干货 >如何用Python爬虫来抓取电影网站的内容

如何用Python爬虫来抓取电影网站的内容

  • 时间:2019-06-27 14:32
  • 发布:达内教育
  • 来源:达内教育

很多电影网站的内容都需要vip或者直接购买,小编今天就分享一下如何用Python爬虫来抓取电影网站的内容!

小编今天就分享一下如何用Python爬虫来抓取电影网站的内容!

实现思路:

抓取一个电影网站中的所有电影的思路如下:

根据一个URL得到电影网站的所有分类

得到每个分类中的电影的页数

根据其电影分类的URL规律构造每个分类中每个页面的URL

分析每个页面中的html,并用正则把电影信息过滤出来

准备工作:

安装python(我用的是mac系统,默认的版本是Python 2.7.1 )

安装mongodb,从官网下载最新版本,然后启动即可,注意如放在外网的话,要设定验证密码或绑定地址为127.0.0.1,否则黑客轻易就进去了

安装BeautifulSoup和pymongo模块

安装一个python编辑器,我个人喜欢用sublime text2

编写部分:

这次以腾讯视频为例,其他视频网站只是换一下正则表达式。

根据视频所有分类的URL获取网站中所有视频分类

腾讯的所有视频的URL为:http://v.qq.com/list/1_-1_-1_-1_1_0_0_20_0_-1_0.html

首先我们import urllib2包,封装一个读取url中html的方法,详细代码如下:

导入需要的模块并定义全局变量:

如何用Python爬虫来抓取电影网站的内容!

gethtml方法,传入一个url,返回这个url的html内容:

如何用Python爬虫来抓取电影网站的内容!

然后查看这个URL的源码文件,得知其电影分类的信息在<ul class="clearfix _group" gname="mi_type" gtype="1">标签内部,每条电信分类的格式为:

<a _hot="tag.sub" class="_gtag _hotkey" href="http://v.qq.com/list/1_0_-1_-1_1_0_0_20_0_-1_0.html" title="动作" tvalue="0">动作</a>

ok,我们再写一个gettags方法,将所有的电影分类及url存放于一个字典中,代码如下:#从电影分类列表页面获取电影分类

如何用Python爬虫来抓取电影网站的内容!

接下来用一个循环分类获取每个分类下电影的页数,代码如下:

如何用Python爬虫来抓取电影网站的内容!

获取每个分类中有多少页电影的代码如下:

如何用Python爬虫来抓取电影网站的内容!

然后在每个分类中,根据其URL的规律生成具体的每页的URL,详细代码如下:

如何用Python爬虫来抓取电影网站的内容!

getmovielist函数的作用是将每页地址返回的html传入,然后从中过滤出电影信息所在的html块,详细代码如下:

如何用Python爬虫来抓取电影网站的内容!

将过滤出来的包含电影信息的html代码块传入getmovie函数来分离出具体的电影信息并入库,详细代码如下:

如何用Python爬虫来抓取电影网站的内容!

总结一下:爬虫实现的原理就是通过对其网页内容规律的观察,然后分离出包含我们感兴趣的html代码块,然后用正则表达式从将这些代码块中将想要的信息分离出来。

如何用Python爬虫来抓取电影网站的内容!

版权声明:文章和图片均来自公开网络,版权归作者本人所有,推送文章除非无法确认,我们都会注明作者和来源。如果出处有误或侵犯到原作者权益,请与达内成都Python培训机构网站联系删除或授权事宜。

上一篇:学习心得:菜鸟学Python,如何从入门到进阶?
下一篇:成都Python爬虫学习:基本原理及过程

Python自学刚开始就想放弃,该如何调整好自己的心态?

如何用Python爬虫来抓取电影网站的内容

成都Python爬虫学习:基本原理及过程

学习心得:菜鸟学Python,如何从入门到进阶?

选择城市和中心
江西省

贵州省

广西省

海南省