python获取豆瓣评分9分以上的电影

部署运行你感兴趣的模型镜像

我想生成的文件用excel保存,所以得安装一下这个

pip install pandas openpyxl

代码

import requests
import pandas as pd

# 模拟浏览器请求头
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
}

# 豆瓣电影搜索评分9分以上的URL模板
base_url = 'https://movie.douban.com/j/new_search_subjects?sort=U&range=9,10&tags=&start='

# 存储电影信息的列表
movies_info = []

# 爬取前10页的数据(每页20部电影)
for start in range(0, 200, 20):
    url = base_url + str(start)
    
    # 发送请求
    response = requests.get(url, headers=headers)
    response.raise_for_status()
    
    # 解析JSON响应
    data = response.json()
    
    # 查找电影条目
    for item in data['data']:
        title = item['title']
        rating = item['rate']
        link = item['url']
        
        movies_info.append({
            'title': title,
            'rating': rating,
            'link': link
        })

# 将数据转换为DataFrame
df = pd.DataFrame(movies_info, columns=['title', 'rating', 'link'])

# 保存为Excel文件
excel_file = "douban.xlsx"
df.to_excel(excel_file, index=False)

print(f"数据已成功写入 {excel_file}")

共有200个电影9分以上

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

### 使用Python编写爬虫程序抓取豆瓣电影评分 为了实现这一目标,可以采用`requests`库发送HTTP请求以及`BeautifulSoup`解析HTML文档。以下是具体方法: #### 准备工作 确保已安装必要的Python包,可通过pip命令安装这些依赖项: ```bash pip install requests beautifulsoup4 lxml openpyxl ``` #### 抓取页面内容 利用`requests.get()`函数向目标URL发起GET请求,并获取响应体中的HTML源码。 ```python import requests from bs4 import BeautifulSoup url = 'https://movie.douban.com/top250' headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)" } response = requests.get(url, headers=headers) html_content = response.text ``` #### 解析网页结构 创建`BeautifulSoup`对象来解析下载下来的HTML字符串,提取所需的数据字段如电影名称、评分等。 ```python soup = BeautifulSoup(html_content, 'lxml') movies = [] for item in soup.find_all('div', class_='item'): title = item.select_one('.title').get_text(strip=True).split()[0] rating_num = float(item.select_one('.rating_num').get_text()) movies.append({"Title": title, "Rating": rating_num}) ``` #### 存储数据至CSV文件 借助内置模块csv将收集好的列表写入本地磁盘作为持久化存储[^3]。 ```python import csv with open('douban_top_250.csv', mode='w', newline='', encoding='utf-8') as f: writer = csv.DictWriter(f, fieldnames=["Title", "Rating"]) writer.writeheader() writer.writerows(movies) ``` 上述代码片段展示了如何通过Python脚本自动化地从豆瓣获取热门影片及其对应的观众评价数,并最终导出为易于阅读的表格形式以便后续析处理。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值