Task01 豆瓣电影Top 250

1、翻阅网页可找到豆瓣电影 Top 250,网页链接为:

https://movie.douban.com/top250?start=0&filter=

网页特点:

        每页25个,共10页

        网址start=0数字部分按照每次累加25进行分页

网页链接获取url代码:

for site in range(0, 250, 25): 

        url = 'https://movie.douban.com/top250?start=' + str(site) +'&filter=' 

2、利用网页审查元素可以快速获取电影名称部分,根据网页元素,可以发现根据alt定位作业所需内容,利用”作为分隔符,分割内容后获取所需部分:电影名name,图片链接image

#获取电影名、图片链接数据

def parse_html(url):    #获取所需数据
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"}
    res = requests.get(url, headers=headers)   #发送请求
    text = res.text   #保存网页文本信息
    item = []   #定义数组
    for i in range(25):  #i取值0-24
        text = text[text.find('alt')+5:]     #查找第i+1个alt,提取alt后第2个字符后面的内容
        item.append(extract(text))    #调用分割函数,分割数据,取数组第1、3个值
    return item         #获取数据赋给item数组

#定义数据分割提取函数

def extract(text):        #定义数据分割提取函数
    text = text.split('"',3)    #使用双引号分割数据,将数据分割为4块
    name = text[0]     #取第1块数据,赋值name
    image = text[2]    #取第3块数据,赋值image
    return name, image    #保留获取数据

3、保存数据,下载图片

def write_movies_file(item, stars):    #获取所需数据,并下载图片
    with open('douban_film.txt','a',encoding='utf-8') as f:    #保存数据并且累加至文件douban_film.txt
        f.write('排名:%d\t电影名:%s\n' % (stars, item[0]))
    r = requests.get(item[1])     #下载图片
    with open('image/' + str(item[0]) + '.jpg', 'wb') as f:    #设置图片下载路径,进行图片命名
        f.write(r.content)   #以二进制的方式进行文件写入
    print(item)   #打印电影名+图片下载链接

主函数如下(包含排名参数):

def main():

    stars = 1  #设置排名参数初始值

    for site in range(0, 250, 25):      #获取豆瓣电影 Top 250所有网址,网址参数部分0开始,每次累加25,最大达到225

        url = 'https://movie.douban.com/top250?start=' + str(site) +'&filter=' 

        for item in parse_html(url):    #加入排名参数,并设置随数组变动,排名参数值每次加1

            write_movies_file(item, stars)  #获取所需数据,并下载图片

            stars += 1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现Python可视化豆瓣电影Top250的功能,可以使用Python中的pandas、pyecharts和matplotlib等库。首先,需要使用Python爬虫技术获取豆瓣电影Top250的数据信息。可以使用Scrapy框架来爬取网页上的电影数据。在命令行中,进入文件夹并运行以下命令生成一个Scrapy爬虫: scrapy genspider doubanmovie.douban.com/top250 接下来,使用pandas库来处理爬取到的数据,可以对数据进行筛选、清洗和整理等操作。pandas提供了丰富的数据处理函数和方法,能够较为方便地对数据进行操作和分析。 接着,使用pyecharts库来进行可视化操作。pyecharts是一个基于Echarts的Python可视化库,可以绘制各种图表,如柱状图、饼图、折线图等。可以根据需求选择合适的图表类型,并使用相应的pyecharts函数来绘制图表。 最后,使用matplotlib库进行更高级的可视化操作。matplotlib是一个功能强大的绘图库,可以绘制各种类型的图表,并支持对图表的各个部分进行自定义设置。 通过上述步骤,可以使用Python实现对豆瓣电影Top250数据的爬取和可视化。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Python爬取、存储、分析、可视化豆瓣电影Top250](https://blog.csdn.net/m0_51873294/article/details/123837719)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Python数据可视化:豆瓣电影TOP250](https://blog.csdn.net/R3eE9y2OeFcU40/article/details/85058866)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值