获取经典电影的详细信息(名称、类型、制片国家/地区、片长、上映时间、评分、累计票房)
时间: 2023-11-03 19:05:02 浏览: 191
您可以使用电影数据库API(如IMDb API)或爬虫技术来获取经典电影的详细信息。以下是一个示例网站,您可以在其中找到大量经典电影的信息:
- IMDb(https://www.imdb.com/)
该网站提供了一系列电影的详细信息,包括名称、类型、制片国家/地区、片长、上映时间、评分、累计票房等等。您可以通过该网站的搜索功能来查找您感兴趣的电影,并获取其详细信息。
另外,您也可以通过爬虫技术来获取电影信息。但请注意,这种做法可能涉及版权和法律问题,如果您想要使用爬虫技术,请确保遵守有关法规。
相关问题
爬虫获取猫眼经典电影的详细信息(名称、类型、制片国家/地区、片长、上映时间、评分、累计票房)
好的,我可以为您提供一个爬虫程序来获取猫眼经典电影的详细信息。首先,我们需要安装requests和BeautifulSoup库。您可以使用以下命令进行安装:
```
pip install requests
pip install beautifulsoup4
```
接下来,您可以使用以下代码实现爬虫程序:
```python
import requests
from bs4 import BeautifulSoup
url = 'https://maoyan.com/films?showType=3'
# 获取页面信息
def get_html(url):
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0;Win64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, headers=headers)
if response.status_code == 200:
return response.text
else:
return None
# 解析页面信息
def parse_html(html):
soup = BeautifulSoup(html, 'html.parser')
movie_list = soup.find_all('div', class_='movie-hover-info')
for movie in movie_list:
name = movie.find('span', class_='name').text
movie_type = movie.find_all('div', class_='movie-hover-title')[1].text.strip().replace('\n', '').split(':')[1]
country = movie.find_all('div', class_='movie-hover-title')[0].text.strip().replace('\n', '').split(':')[1]
movie_time = movie.find_all('div', class_='movie-hover-title')[3].text.strip().replace('\n', '').split(':')[1]
release_date = movie.find_all('div', class_='movie-hover-title')[2].text.strip().replace('\n', '').split(':')[1]
score = movie.find('span', class_='score').text
box_office = movie.find_all('span', class_='stonefont')[1].text
print('电影名称:', name)
print('电影类型:', movie_type)
print('制片国家/地区:', country)
print('片长:', movie_time)
print('上映时间:', release_date)
print('评分:', score)
print('累计票房:', box_office)
if __name__ == '__main__':
html = get_html(url)
parse_html(html)
```
运行代码后,程序会输出猫眼经典电影的详细信息,包括电影名称、类型、制片国家/地区、片长、上映时间、评分、累计票房。
目标网址:https://movie.douban.com/top250?format=text请求:requests 方式发送请求 解析:re 方式解析数据字段:电影标题、导演、编剧、主演、类型、制片国家/地区、语言、上映时间、片长、别名、评分、评价人数,描述,宣传图片
使用requests库发送GET请求到指定URL `https://movie.douban.com/top250?format=text` 的步骤如下:
```python
import requests
import re
# 发送GET请求
url = "https://movie.douban.com/top250?format=text"
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)
# 检查请求是否成功
if response.status_code == 200:
# 解析响应文本
data = response.text
# 定义正则表达式模式来匹配电影信息字段
patterns = {
'电影标题': r'<span class="title">(.*?)</span>', # 标题
'导演': r'<span property="v:directedBy">(.*)</span>', # 导演
'编剧': r'<span property="v:starring">(.*)</span>', # 编剧
'主演': r'<a href="/name/(.*?)" target="_blank">(.*)</a>', # 主演
'类型': r'<span class="type">(.*?)</span>', # 类型
'制片国家/地区': r'<span property="v:origin">(.*)</span>', # 制片国
'语言': r'<span property="v:spokenLanguage">(.*)</span>', # 语言
'上映时间': r'<time datetime="(.*?)">(.*?)</time>', # 上映日期
'片长': r'<span class="length">(.*?)</span>', # 片长
'别名': r'<span class="alias">(.*?)</span>', # 别名
'评分': r'<span class="rating_num" property="v:average">(\d+\.\d+)</span>', # 评分
'评价人数': r'<span>(.*?)人评价</span>', # 评价人数
'描述': r'<p>(.*?)</p>', # 描述
'宣传图片': r'<img src="(http.*?)".*?>', # 图片链接
}
# 使用正则表达式从字符串中提取信息
extracted_data = {}
for field, pattern in patterns.items():
match = re.search(pattern, data)
if match:
extracted_data[field] = match.group(1) if len(match.groups()) > 1 else match.group()
print(extracted_data)
else:
print("请求失败,状态码:", response.status_code)
阅读全文