python电影数据爬取的代码
时间: 2024-06-22 10:03:24 浏览: 138
Python爬取电影数据-进行可视化分析利用request爬取电影数据保存在csv文本,2.zip
在Python中,爬取电影数据通常会用到一些库,如requests、BeautifulSoup、pandas和可能的Scrapy框架。以下是一个简单的示例,演示如何使用这些工具从一个电影数据库网站(如IMDb)获取电影标题:
```python
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 目标URL
url = "https://www.imdb.com/chart/top?ref_=nv_mv_250"
def get_movie_data(url):
# 发送GET请求
response = requests.get(url)
# 检查请求状态码
if response.status_code == 200:
# 解析HTML内容
soup = BeautifulSoup(response.text, 'html.parser')
# 找到电影列表
movie_list = soup.find('tbody', {'class': 'lister-list'})
# 提取数据(例如:标题)
titles = []
years = []
for row in movie_list.find_all('tr'):
title_year_cell = row.find_all('td', {'class': 'titleColumn'})
title = title_year_cell.text.strip()
year = title_year_cell.text.strip() if len(title_year_cell) > 1 else ""
titles.append(title)
years.append(year)
# 创建DataFrame
data = {'Title': titles, 'Year': years}
df = pd.DataFrame(data)
return df
else:
print(f"Failed to fetch data with status code: {response.status_code}")
# 获取并打印数据
movie_df = get_movie_data(url)
print(movie_df.head())
```
这个示例主要抓取了IMDb排行榜的前几部电影及其年份。请注意,实际的电影数据抓取可能会因为网站结构改变而需要调整解析逻辑。
阅读全文