python爬取猫眼电影 top 100 保存到CSV

简介: 代码没含量,希望帮到入门的小白。import requestsimport re,jsonfrom lxml import etreeimport csvclass Spider(): def open_csv(self): ...

代码没含量,希望帮到入门的小白。

import requests
import re,json
from lxml import etree
import csv

class Spider():
    def open_csv(self):
        '''
        在CSV文件的开头写一行标题
        :return:
        '''
        with open('data.csv', 'a', newline='') as f:
            spamwriter = csv.writer(f)
            spamwriter.writerow(['title', 'star', 'date', 'score'])

    def __get_page(self,url,headers):
        '''
        获取文本内容
        :param url:
        :param headers:
        :return:
        '''
        try:
            response = requests.get(url,headers=headers)
            if response.status_code == 200:
                return response.text
            else:
                return None
        except Exception:
            return None

    def __parse_page(self,html):
        '''
        解析HTML,并得到提取的数据
        :param html:
        :return:
        '''
        data = etree.HTML(html)

        results = data.xpath('//*[@class="board-wrapper"]/dd/div/div')
        for result in results:
            # 电影名称 电影主演 电影上映日期 评分
            ws = [
            result.xpath('./div[1]/p[1]/a/text()')[0],
            result.xpath('./div[1]/p[2]/text()')[0].strip(),
            result.xpath('./div[1]/p[3]/text()')[0],
            result.xpath('./div[2]/p/i[1]/text()')[0] + result.xpath('./div[2]/p/i[2]/text()')[0],
            ]

            #保存到CSV
            with open('data.csv','a',newline='') as f:
                writer = csv.writer(f)
                writer.writerow(ws)

    def run(self):
        '''
        程序运行入口
        :return:
        '''
        self.open_csv()

        for i in range(11):
            url ='http://maoyan.com/board/4?offset={}'.format(10*i)
            headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64)'
                                     ' AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
                       }
            html = self.__get_page(url,headers)
            self.__parse_page(html)

#实例化类
spider = Spider()
spider.run()
目录
相关文章
|
3月前
|
数据采集 数据可视化 算法
【优秀python案例】基于Python的豆瓣电影TOP250爬虫与可视化设计与实现
本文设计并实现了一个基于Python的豆瓣电影TOP250爬虫与可视化系统,通过获取电影评分、评论并应用词云和饼图等可视化技术,为用户提供了电影评价的直观展示和深入分析。
386 3
【优秀python案例】基于Python的豆瓣电影TOP250爬虫与可视化设计与实现
|
16天前
|
机器学习/深度学习 数据采集 搜索推荐
利用Python和机器学习构建电影推荐系统
利用Python和机器学习构建电影推荐系统
32 1
|
1月前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
52 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
2月前
|
数据挖掘 数据处理 索引
python 读取数据存为csv
在Python中,读取数据并将其保存为CSV(逗号分隔值)文件是一种常见的操作,特别适用于数据分析和数据科学领域。这里将展示如何使用Python的内置库`csv`和流行的数据处理库`pandas`来完成这项任务。 ### 使用`csv`模块 如果你正在处理的是简单的文本数据或者需要更低层次的控制,可以使用Python的`csv`模块。以下是一个基本示例,演示如何将数据写入CSV文件: ```python import csv # 假设这是你要写入CSV的数据 rows = [ ["Name", "Age", "City"], ["Alice", 24, "New Yor
97 36
|
1月前
|
Python
Python实用记录(四):os模块-去后缀或者改后缀/指定目录下图片或者子目录图片写入txt/csv
本文介绍了如何使用Python的os模块来操作文件,包括更改文件后缀、分割文件路径和后缀、将指定目录下的所有图片写入txt文档,以及将指定目录下所有子目录中的图片写入csv文档,并为每个子目录分配一个标签。
21 1
|
2月前
|
机器学习/深度学习 数据采集 TensorFlow
使用Python实现深度学习模型:智能电影制作与剪辑
使用Python实现深度学习模型:智能电影制作与剪辑
76 5
|
1月前
|
存储 JSON 数据格式
Python 输入输出与文件处理: io、pickle、json、csv、os.path 模块详解
Python 输入输出与文件处理: io、pickle、json、csv、os.path 模块详解
36 0
|
2月前
|
数据采集 数据挖掘 数据处理
使用Python和Pandas处理CSV数据
使用Python和Pandas处理CSV数据
124 5
|
3月前
|
数据采集 自然语言处理 数据可视化
优秀python系统案例】基于python Flask的电影票房数据爬取与可视化系统的设计与实现
本文介绍了一个基于Python Flask框架开发的电影票房数据爬取与可视化系统,该系统利用网络爬虫技术从豆瓣电影网站抓取数据,通过Python进行数据处理和分析,并采用ECharts等库实现数据的可视化展示,为电影行业从业者提供决策支持。
257 2
优秀python系统案例】基于python Flask的电影票房数据爬取与可视化系统的设计与实现
|
3月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的电影订票管理系统
该项目是基于Python+Vue开发的电影订票管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的电影订票管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
30 1
下一篇
无影云桌面