爬取猫眼排行榜

爬取猫眼排行榜的过程

我之前都没有记录的习惯,现在看以前学习过的一些东西全给忘了,所以现在打算好好把东西记录下来,以后忘了可以翻一翻。
现在我学习的是崔庆才博客里面的知识,因为以前学习过,现在只是将其中的东西梳理一下。
首先开始实战部分,开始爬取猫眼排行榜的TOP100,这里用到的模块是requests,re,json,time等模块。
开始打开猫眼排行榜,找到榜单部分,点击TOP100,就看到了评分最高的100部影片,猫眼TOP100榜单源码
在这里插入图片描述通过以上图片可以看出,一部影片完整的信息被包裹在一个dd标签之中,现在知道了信息在哪,那么接下来就是解析这个dd标签就行了。

爬取第一页的内容

import requests
 
def get_one_page(url):			#构造一个解析url的方法
    response = requests.get(url)		#取获取这个url的内容	
    if response.status_code == 200:		#如果返回码为200则返回response的text文件
        return response.text			#返回url的源码
    return None
 
def main():								#主函数
    url = 'http://maoyan.com/board/4'	#url
    html = get_one_page(url)			#调用url
    print(html)							#输出获取的url的html源码
 
main()

运行上面那段代码可以获取所有的源码在这里插入图片描述
上面就是爬取的源码,下面就是进行解析了。

用正则对源码进行解析

首先我们将我们需要的信息列出来,我们爬取出排行,封面图,电影名,主演,上映时间,评分。接下来我们可以观察这些信息都位于上面标签中,排行在一个i标签中,class为board-index,图片位于一个img标签中…

下面进行正则匹配,单个影片所有信息都位于dd标签中,比如匹配排名

<dd>.*?board-index.*?>(.*?)</i>	#括号中就是排名,.*?代表任意字符

完整的正则表达式为

('<dd>.*?board-index.*?>(\d+)</i>.*?data-src="(.*?)".*?name"><a.*?>(.*?)</a>.'
 + '*?star">(.*?)</p>.*?releasetime">(.*?)</p>.*?integer"
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值