【Python爬虫笔记】爬取爱奇艺热门电影信息(电影名、主演、播放链接、电影评分)

mac2025-11-17  1

import urllib.request import re import os import requests import xlsxwriter import xlrd Pic = "./Picture" html = urllib.request.urlopen("https://list.iqiyi.com/www/1/-------------11-1-1-iqiyi--.html").read() html = html.decode("utf-8")                                #请求链接,返回网页信息并转换编码格式 req = "imageUrl\":\"(.*?),"; req_name = "<a title=\"(.*?)\" class=\"link-txt";       #正则表达式 匹配电影名 req_zy = "<p title=\"(.*?)\" class=";                    #正则表达式 匹配主演信息 req_play = "playUrl\":\"(.*?)\",\"duration";            #正则表达式 匹配播放链接     req_score =  "<span class=\"text-score\">(.*?)</span>";    #正则表达式 匹配电影评分     Move_name = [] Move_url = []                                            #用于存储爬取的电影名、主演信息、播放链接 Move_zy = [] urls = re.findall(req, html) urls_name = re.findall(req_name, html) urls_zy = re.findall(req_zy, html)                        #通过正则表达式匹配到有效信息 urls_play = re.findall(req_play, html) urls_score = re.findall(req_score, html) #print(urls) Flag = 1 workbook = xlsxwriter.Workbook("text.xlsx")                #新建一个表格用于存放爬取的信息 worksheet = workbook.add_worksheet() worksheet.set_column('A:D', 30)                          # 设置A到D列的列宽全为20 worksheet.write(0,0,"电影名") worksheet.write(0,1,"主演")                                #设置表头信息 worksheet.write(0,2,"播放路径") worksheet.write(0,3,"电影评分")                         #设置表格宽度 print("\n")     for j in urls_name:     worksheet.write(Flag,0,j)     Flag = Flag + 1                                        #循环存储爬取的电影名数据 Flag = 1      print("电影名存储完成...") for k in urls_zy:     worksheet.write(Flag,1,k)                            #循环存储爬取的主演信息数据     Flag = Flag + 1  Flag = 1 print("主演存储完成...") for p in urls_play:     worksheet.write(Flag,2,p)                            #循环存储爬取的电影播放路径数据     Flag = Flag + 1 Flag = 1     print("播放路径存储完成...") for p in urls_score:     worksheet.write(Flag,3,p)     Flag = Flag + 1                                        #循环存储爬取的电影评分数据 Flag = 1 print("电影评分储完成...")     workbook.close()                                         #关闭表格文件(不关闭会报错、文件不会保存) data = xlrd.open_workbook('text.xlsx') table = data.sheet_by_index(0)                            #打开表格文件 Flag = 1 if not os.path.exists(Pic):                                #判断当前根目录是否存在,不存在则创建     os.mkdir(Pic) for i in urls:     img = requests.get(i)      f = open('./Picture/'+str(table.cell(Flag,0).value)+'.jpg','ab')     #存储图片,文件名从表格中获取电影名     Flag = Flag + 1     f.write(img.content)                                 #多媒体存储图片文件                         f.close() print("电影图片存储完成...")    

 

最新回复(0)