python爬取豆瓣电影

时间: 2023-09-14 11:11:27 浏览: 48
以下是一个简单的Python爬取豆瓣电影的例子: ```python import requests from bs4 import BeautifulSoup # 设置请求头 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} # 请求页面 url = 'https://movie.douban.com/top250' response = requests.get(url, headers=headers) # 解析页面 soup = BeautifulSoup(response.text, 'html.parser') movies = soup.find_all('div', class_='hd') for movie in movies: title = movie.a.span.text.strip() print(title) ``` 这个例子首先通过requests库发送GET请求来获取豆瓣电影Top250列表页面的HTML代码。然后使用BeautifulSoup库解析HTML代码,找到页面中每个电影的标题,最后打印出来。请注意,为了避免被豆瓣网站屏蔽,我们在请求中设置了一个浏览器的User-Agent头。
相关问题

用python爬取豆瓣电影

好的,以下是利用 Python 爬取豆瓣电影的基本步骤: 1. 安装相关库 我们需要使用 requests 库来发送 HTTP 请求,以及使用 BeautifulSoup 库来解析 HTML 页面。你可以使用以下命令安装这两个库: ```python pip install requests beautifulsoup4 ``` 2. 发送 HTTP 请求 我们可以使用 requests 库中的 get 方法来向豆瓣电影的网站发送 HTTP 请求,并获得响应: ```python import requests url = 'https://movie.douban.com/top250' response = requests.get(url) ``` 3. 解析 HTML 页面 我们可以使用 BeautifulSoup 库将响应的 HTML 页面解析成 BeautifulSoup 对象: ```python from bs4 import BeautifulSoup soup = BeautifulSoup(response.text, 'html.parser') ``` 4. 提取电影数据 在 BeautifulSoup 对象中,我们可以使用 find 或 find_all 方法来查找特定的 HTML 标签和属性。通过查看豆瓣电影 Top250 页面的 HTML 结构,我们可以发现每个电影都包含在一个 class 为 "item" 的 div 标签中,而每个电影的名称和评分则分别包含在 class 为 "title" 和 "rating_num" 的 span 标签中。因此,我们可以使用以下代码来提取电影名称和评分: ```python movies = soup.find_all('div', class_='item') for movie in movies: title = movie.find('span', class_='title').text.strip() rating = movie.find('span', class_='rating_num').text.strip() print(title, rating) ``` 以上就是利用 Python 爬取豆瓣电影的基本步骤。当然,还可以根据需要提取更多的电影数据,例如导演、演员、上映时间等。

python爬取豆瓣电影短评

要使用Python爬取豆瓣电影短评,可以按照以下步骤进行: 1. 导入必要的库,包括requests、BeautifulSoup和pandas。 ```python import requests from bs4 import BeautifulSoup import pandas as pd ``` 2. 定义一个函数,用于获取指定电影的短评。该函数需要传入电影的URL和要获取的页数。 ```python def get_comments(url, pages): comments = [] for i in range(pages): # 构造URL url_page = url + 'comments?start=' + str(i * 20) + '&limit=20&status=P&sort=new_score' # 发送请求 response = requests.get(url_page) # 解析HTML soup = BeautifulSoup(response.text, 'html.parser') # 获取评论 items = soup.find_all('div', class_='comment-item') for item in items: comment = item.find('span', class_='short').text.strip() comments.append(comment) return comments ``` 3. 调用该函数获取指定电影的短评,并将结果保存到CSV文件中。 ```python # 电影《肖申克的救赎》的URL url = 'https://movie.douban.com/subject/1292052/' # 获取短评 comments = get_comments(url, 5) # 将结果保存到CSV文件中 df = pd.DataFrame({'comments': comments}) df.to_csv('comments.csv', index=False) ```

相关推荐

最新推荐

recommend-type

python 爬取豆瓣电影评论,并进行词云展示

# -*-coding:utf-8-*- import urllib.request from bs4 import BeautifulSoup def getHtml(url): """获取url页面""" headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, ...
recommend-type

基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出

基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出 基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出 基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出 基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出 基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出 基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出 基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出 基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出 基于随机森林的数据分类预测Matlab程序RF 多特征输入多类别输出
recommend-type

Go微服务教程项目使用领域驱动设计和洋葱架构.zip

Go微服务教程项目使用领域驱动设计和洋葱架构
recommend-type

520表白的表白的代码

520了表白成功我只能说520快乐了520快乐520祝您表白成功
recommend-type

vgg模型-通过CNN训练识别基于深度学习的车载摄像头图像中的交通事件分类-不含数据集图片-含逐行注释和说明文档.zip

vgg模型_通过CNN训练识别基于深度学习的车载摄像头图像中的交通事件分类-不含数据集图片-含逐行注释和说明文档 本代码是基于python pytorch环境安装的。 下载本代码后,有个环境安装的requirement.txt文本 如果有环境安装不会的,可自行网上搜索如何安装python和pytorch,这些环境安装都是有很多教程的,简单的 环境需要自行安装,推荐安装anaconda然后再里面推荐安装python3.7或3.8的版本,pytorch推荐安装1.7.1或1.8.1版本 首先是代码的整体介绍 总共是3个py文件,十分的简便 且代码里面的每一行都是含有中文注释的,小白也能看懂代码 然后是关于数据集的介绍。 本代码是不含数据集图片的,下载本代码后需要自行搜集图片放到对应的文件夹下即可 在数据集文件夹下是我们的各个类别,这个类别不是固定的,可自行创建文件夹增加分类数据集 需要我们往每个文件夹下搜集来图片放到对应文件夹下,每个对应的文件夹里面也有一张提示图,提示图片放的位置 然后我们需要将搜集来的图片,直接放到对应的文件夹下,就可以对代码进行训练了。 运行01
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

深入了解MATLAB开根号的最新研究和应用:获取开根号领域的最新动态

![matlab开根号](https://www.mathworks.com/discovery/image-segmentation/_jcr_content/mainParsys3/discoverysubsection_1185333930/mainParsys3/image_copy.adapt.full.medium.jpg/1712813808277.jpg) # 1. MATLAB开根号的理论基础 开根号运算在数学和科学计算中无处不在。在MATLAB中,开根号可以通过多种函数实现,包括`sqrt()`和`nthroot()`。`sqrt()`函数用于计算正实数的平方根,而`nt
recommend-type

react的函数组件的使用

React 的函数组件是一种简单的组件类型,用于定义无状态或者只读组件。 它们通常接受一个 props 对象作为参数并返回一个 React 元素。 函数组件的优点是代码简洁、易于测试和重用,并且它们使 React 应用程序的性能更加出色。 您可以使用函数组件来呈现简单的 UI 组件,例如按钮、菜单、标签或其他部件。 您还可以将它们与 React 中的其他组件类型(如类组件或 Hooks)结合使用,以实现更复杂的 UI 交互和功能。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。