栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

爬虫小案例02—使用re模块爬取豆瓣电影排行榜,仅第一页

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

爬虫小案例02—使用re模块爬取豆瓣电影排行榜,仅第一页

具体步骤如下:

1、明确爬取的网址,并检查所要获取的内容是否在网页源代码中
2、加载所有的包,并尝试获取网页源代码
3、解析数据
4、开始匹配
5、将数据保存为csv格式,方便数据分析时使用

1、本此爬取的网址及想要获取的内容

网址是:https://movie.douban.com/chart
预获取的内容:

在网页上面右击——检查,发现想要的数据均可以从源代码中直接获取

2、加载所有的包,并尝试获取网页源代码
#获取页面源代码
url = "https://movie.douban.com/chart"
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36"   
}
rep = requests.get(url,headers = headers)
print(rep.text)

成功获取,和在浏览器中查看的源代码是一致的,没有乱码

3、解析数据

欲获取的内容应该有一致的结构,里面不同的内容但是我们不需要的可以使用.*?过滤掉,
想要的内容使用(?P.*?),其中<>中的是组名,任取

#开始解析
obj = re.compile('.*?.*?)">.*?

(?P

.*?(?P.*?).*?(?P.*?)',re.S) 4、开始匹配(可以查看匹配结果)
#进行匹配
result = obj.finditer(rep.text)
for i in result:
    print(i.group("name"))
    print(i.group("time"))
    print(i.group("score"))
    print(i.group("num"))

5、将数据保存为csv格式(可以将第4步省略掉)

数据保存为csv格式,方便数据分析时使用

#保存成文件,方便数据分析时使用
result = obj.finditer(rep.text)
f = open("data.csv",mode = "w")
csvwriter = csv.writer(f)
for it in result:
    #存储为字典
    dic = it.groupdict()
    csvwriter.writerow(dic.values())
#将打开的文件关闭
f.close()
print("success")

完整代码[可直接运行]
#导入所需要的包
import requests
import re
import csv
#获取页面源代码
url = "https://movie.douban.com/chart"
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36"   
}
rep = requests.get(url,headers = headers)
#开始解析
obj = re.compile('
.*?.*?)">.*?

(?P

.*?(?P.*?).*?(?P.*?)',re.S) #进行匹配 result = obj.finditer(rep.text) #保存成文件,方便数据分析时使用 f = open("data.csv",mode = "w") csvwriter = csv.writer(f) for it in result: #存储为字典 dic = it.groupdict() csvwriter.writerow(dic.values()) #将打开的文件关闭 f.close() print("success")
转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号