python爬取豆瓣电影
时间: 2023-07-06 07:42:22 浏览: 119
好的,下面是一个简单的 Python 程序,可以用来爬取豆瓣电影的数据:
```python
import requests
from bs4 import BeautifulSoup
url = 'https://movie.douban.com/top250'
# 发送请求
response = requests.get(url)
# 解析HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 获取电影列表
movies = soup.find_all('div', class_='info')
# 遍历电影列表,获取电影名称、评分等信息
for movie in movies:
# 电影名称
title = movie.find('span', class_='title').text.strip()
# 评分
rating = movie.find('span', class_='rating_num').text.strip()
# 导演、演员等信息
info = movie.find('div', class_='bd').p.text.strip()
print(title, rating, info)
```
这个程序会爬取豆瓣电影 Top250 的电影名称、评分、导演等信息,并将其打印出来。你可以根据自己的需要修改程序,比如爬取其他页面的数据,或者将数据保存到文件中。
相关问题
python爬取豆瓣电影top250_python3爬取豆瓣top250电影
好的,以下是Python3爬取豆瓣Top250电影的代码示例:
```python
import requests
from bs4 import BeautifulSoup
def get_movie_list(url):
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'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
movie_list = soup.find_all('div', class_='hd')
for i in range(len(movie_list)):
movie_name = movie_list[i].a.span.text.strip()
print(f'{i+1}. {movie_name}')
if __name__ == '__main__':
urls = ['https://movie.douban.com/top250?start={}'.format(str(i)) for i in range(0, 250, 25)]
for url in urls:
get_movie_list(url)
```
这段代码会爬取豆瓣Top250电影的名称,并且按顺序输出。你可以直接运行并查看结果。
python爬取豆瓣电影评论_Python爬取豆瓣电影的短评数据并进行词云分析处理
好的,我可以给你一些指导和帮助。首先,你需要安装好Python爬虫框架,比如requests和beautifulsoup4。然后,你需要了解豆瓣电影评论页面的URL和HTML结构。接下来,你可以编写Python代码,使用requests发送HTTP请求获取页面内容,并使用beautifulsoup4解析HTML,提取出需要的数据。最后,你可以使用Python的词云库,比如wordcloud,对评论数据进行分析和可视化。
以下是一个简单的Python爬取豆瓣电影评论的示例代码:
```python
import requests
from bs4 import BeautifulSoup
from wordcloud import WordCloud
# 豆瓣电影评论页面的URL
url = 'https://movie.douban.com/subject/26794435/comments?status=P'
# 发送HTTP请求获取页面内容
response = requests.get(url)
html = response.text
# 使用beautifulsoup4解析HTML,提取出评论数据
soup = BeautifulSoup(html, 'html.parser')
comments = []
for comment in soup.find_all('span', class_='short'):
comments.append(comment.string)
# 对评论数据进行词云分析处理
text = ' '.join(comments)
wordcloud = WordCloud(width=800, height=800, background_color='white').generate(text)
wordcloud.to_file('wordcloud.png')
```
这段代码可以获取豆瓣电影《复仇者联盟4:终局之战》的短评数据,并生成一个词云图片。你可以根据自己的需要修改URL和电影名称,以及调整词云图片的大小和颜色等参数。
阅读全文