python爬虫豆瓣top250

注意

1,BeautifulSoup lxml解析器安装

2,代码缩进格式

复制代码
f.close()
python 复制代码
import csv

import requests
from bs4 import BeautifulSoup

# 请求头部
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.36'
}


# 解析页面函数
def parse_html(html):
    # soup = BeautifulSoup(html, 'html.parser')
    soup = BeautifulSoup(html, 'lxml')
    movie_list = soup.find('ol', class_='grid_view').find_all('li')
    # print("response movie_list", movie_list)

    for movie in movie_list:
        title = movie.find('div', class_='hd').find('span', class_='title').get_text()
        rating_num = movie.find('div', class_='star').find('span', class_='rating_num').get_text()
        comment_num = movie.find('div', class_='star').find_all('span')[-1].get_text()
        writer.writerow([title, rating_num, comment_num])


# 保存数据函数
def save_data():
    f = open('douban_movie_top250.csv', 'a', newline='', encoding='utf-8-sig')

    global writer
    writer = csv.writer(f)
    writer.writerow(['电影名称', '评分', '评价人数'])
    for i in range(10):
        url = 'https://movie.douban.com/top250?start=' + str(i * 25) + '&filter='
        response = requests.get(url, headers=headers)
        # print("response text", response.text)
        parse_html(response.text)
    f.close()


if __name__ == '__main__':
    save_data()

# 1,BeautifulSoup lxml 解析器安装
# 2,BeautifulSoup 如何引入第三方库 BeautifulSoup lxml,默认是导入的是python内置的解析器
#
# 1. 安装 Python 和 pip
# 确保你已经安装了 Python 和 pip。你可以在终端中运行以下命令来检查是否已安装:
#
# bash
# python3 --version
# pip3 --version
# 如果没有安装 Python 3,可以从 Python 官网 下载并安装 Python 3。通常,安装 Python 后 pip 会自动安装。
#
# 2. 安装 BeautifulSoup 和 lxml
# 安装 beautifulsoup4
# BeautifulSoup 是一个用于解析 HTML 和 XML 的库,通常与 beautifulsoup4 包一起使用。
#
# 在终端中输入以下命令来安装 beautifulsoup4:
#
# bash
# pip3 install beautifulsoup4
相关推荐
必须得开心呀几秒前
python编写带界面的软件,需要安装哪些插件
开发语言·python
Wx-bishekaifayuan7 分钟前
express皖美特色农产品网售系统53118-计算机课程设计、毕业设计
人工智能·spring boot·后端·python·课程设计·express·旅游
青少儿编程课堂36 分钟前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
计算机编程指导师1 小时前
【计算机毕设推荐】基于Hadoop+Spark的公共交通运营数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·计算机·数据分析·spark·交通
Wx-bishekaifayuan1 小时前
springboot汉中旅游服务平台41442-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
WeiXin_DZbishe1 小时前
基于springboot城市公交实时运营与调度系统-计算机毕设 附源码【课程设计】66173
java·vue.js·spring boot·后端·python·php·课程设计
泡茶喝茶写代码1 小时前
A股量化数据工程:从 REST 接口到策略信号(第 18 篇):放量缩量异动扫描
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
WeiXin_DZbishe1 小时前
基于Springboot+AI的kuall音乐广场的设计与实现-计算机毕设 附源码【课程设计】12715
vue.js·人工智能·spring boot·后端·python·php·课程设计
沫璃染墨2 小时前
《Qt从零入门系列(十三):QSS样式表详解——从选择器与层叠规则到控件美化实战》
开发语言·css·c++·qt·ui·qt6.3·qss