这是一个简单的Python代码示例,使用requests
和BeautifulSoup
库来爬取电影信息。这个示例将从一个电影网站(比如IMDb)上抓取电影的标题。请注意,这个代码只是一个示例,并且网站的结构可能会发生变化,导致代码不再有效。此外,频繁的请求可能会对网站造成负担,甚至可能违反其服务条款。在实际使用中,请确保遵守网站的robots.txt文件和使用条款。
- import requests
- from bs4 import BeautifulSoup
-
- def fetch_movie_info(url):
- # 发送GET请求
- response = requests.get(url)
-
- # 检查请求是否成功
- if response.status_code != 200:
- print(f"Failed to retrieve the webpage. Status code: {response.status_code}")
- return None
-
- # 使用BeautifulSoup解析HTML
- soup = BeautifulSoup(response.text, 'html.parser')
-
- # 查找电影标题。这取决于网站的具体结构。这里只是一个示例。
- movie_titles = soup.find_all('h2', class_='title') # 假设电影标题在class为'title'的h2标签中
-
- # 存储电影标题
- movies = []
- for title in movie_titles:
- movies.append(title.text)
-
- return movies
-
- # 使用示例
- url = 'https://www.....' # 替换为你想要爬取的电影网站的URL
- movie_info = fetch_movie_info(url)
- if movie_info:
- for movie in movie_info:
- print(movie)
- else:
- print("Failed to fetch movie info.")
在这个示例中,我使用了IMDb的热门电影榜单页面作为目标URL。然而,实际的电影网站可能会有不同的HTML结构,所以你需要根据目标网站的实际结构来调整BeautifulSoup
的查询语句。
此外,这个代码示例没有处理可能出现的异常,例如网络问题或HTML解析错误。在实际应用中,你可能需要添加额外的错误处理代码来提高程序的健壮性。