【python】爬取豆瓣电影排行榜Top250存储到Excel文件中
import requests
from bs4 import BeautifulSoup
import xlwt
# 请求URL
url = 'https://movie.douban.com/top250/'
# 发送请求,获取响应
response = requests.get(url)
# 解析HTML内容
soup = BeautifulSoup(response.text, 'lxml')
# 提取电影信息
movies = soup.find_all('div', class_='info')
# 创建Excel工作簿和工作表
workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('豆瓣电影Top250')
# 定义表头
headers = ['排名', '电影名称', '评分', '评分人数', '类型', '上映时间', '国家', '导演', '主演']
# 写入表头
for i in range(len(headers)):
worksheet.write(0, i, headers[i])
# 解析电影信息并写入Excel
for index, movie in enumerate(movies):
rank = movie.find_all('div', class_='pic')[0]['data-rank']
name = movie.find_all('span', class_='title')[0].text
score = movie.find_all('rating_num')[0].text
people_score = movie.find_all('span', class_='pl')
if people_score:
people_score = people_score[0].text
else:
people_score = ''
info = movie.find_all('p', class_='')
if info:
info = info[0].text.replace('\n', '').replace(' ', '')
else:
info = ''
# 写入数据
worksheet.write(index + 1, 0, rank)
worksheet.write(index + 1, 1, name)
worksheet.write(index + 1, 2, score)
worksheet.write(index + 1, 3, people_score)
worksheet.write(index + 1, 4, info)
# 保存Excel文件
workbook.save('豆瓣电影Top250.xls')
这段代码使用了requests库来发送HTTP请求,获取豆瓣电影Top250的HTML内容。然后使用BeautifulSoup库来解析HTML,提取每部电影的信息,并存储到一个Excel文件中。这个例子展示了如何使用Python爬取网页数据并进行简单的数据解析,同时也展示了如何将数据存储到Excel文件中。
评论已关闭