python3网络爬虫开发实战笔记-第一章
import requests
from bs4 import BeautifulSoup
# 第一个网络爬虫示例:获取豆瓣电影的TOP250信息
def crawl_douban_movie_top250(url):
# 发送HTTP GET请求
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 使用BeautifulSoup解析网页
soup = BeautifulSoup(response.text, 'html.parser')
# 找到包含电影信息的表格
movie_table = soup.find('table', class_='paginator')
# 遍历每一行(每一部电影)
for row in movie_table.find_all('tr'):
cells = row.find_all('td')
# 假设每行有5个单元格(电影信息)
if len(cells) == 5:
rank = cells[0].get_text().strip() # 排名
title = cells[1].find('a').get_text().strip() # 电影名称
rating = cells[2].find('span', class_='rating_num').get_text().strip() # 评分
# 注意:以下两个字段可能不存在,需要进行错误处理
info = cells[3].get_text().strip() # 信息,包括导演、主演等
comment = cells[4].find('span', class_='inq').get_text().strip() # 评论数
# 打印或存储电影信息
print(f'排名: {rank}, 电影名: {title}, 评分: {rating}, 信息: {info}, 评论数: {comment}')
else:
print('请求失败')
# 网络爬虫的入口
if __name__ == '__main__':
url = 'https://movie.douban.com/top250'
crawl_douban_movie_top250(url)
这段代码实现了一个简单的网络爬虫,用于抓取豆瓣电影TOP250的信息。代码首先导入了requests和BeautifulSoup库,然后定义了一个函数crawl_douban_movie_top250
,该函数接收一个URL作为参数,发送HTTP GET请求,并使用BeautifulSoup解析网页。代码提取了每部电影的排名、名称、评分、信息和评论数,并打印输出。在主程序中,调用了这个函数,传入了豆瓣TOP250的URL。
评论已关闭