码迷,mamicode.com
首页 > 编程语言 > 详细

python爬取猫眼电影的Top100

时间:2019-11-25 20:52:02      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:lxml   右上角   gif   字段   lap   结果   time   range   存储   

1 查看网页结构

(1)确定需要抓取的字段

电影名称

电影主演

电影上映时间

电影评分

(2) 分析页面结构

按住f12------->点击右上角(如下图2)---->鼠标点击需要观察的字段

技术图片

(3)BeautifulSoup解析源代码并设置过滤属性

1 soup = BeautifulSoup(htmll, lxml)

2 Movie_name = soup.find_all(div,class_=movie-item-info)

3 Movie_Score1=soup.find_all(p,class_=score)

(4)调试查看过滤属性是否正确

技术图片

(5)提取对应字段

技术图片
 1  for cate,score in zip(Movie_name,Movie_Score1):
 2         data={}
 3         movie_name1 = cate.find(a).text.strip(\n)
 4         data[title]=movie_name1
 5         movie_actor = cate.find_all("p")[1].text.replace("\n"," ").strip()
 6         data[actors]=movie_actor
 7         movie_time=cate.find_all("p")[2].text.strip(\n).strip()
 8         data[data]=movie_time
 9         movie_score1=score.find_all("i")[0].string
10         movie_score2=score.find_all("i")[1].string
11         movie_score=movie_score1+movie_score2
12         data[score] = movie_score
13         name = movie_name1 + "\t"+movie_actor+"\t" + movie_time+"\t"+movie_score
14         DATA.append(name)
15         with open(Movie1.txt, a+) as f:
16             f.write("\n{}".format(name))
View Code

(6)翻页爬取

如下图,按照1 2 3步骤,发现页数是有这样子的规律。比如offset=0 offset=10......

技术图片

技术图片

2 存储excel

技术图片
1   for datas in DATA:
2         datas=datas.split(\t)#因为我之前解析字段拼接的时候就是采用\t分割
3         print(len(datas))
4         print(datas)
5         for j in range(len(datas)):#列表中的每一项都包含按照\t分割的字段
6             print(j)
7             sheet1.write(i, j, datas[j])
8         i = i + 1
9     f.save("d.xls")  # 保存文件
View Code

3 结果

技术图片

 

python爬取猫眼电影的Top100

标签:lxml   右上角   gif   字段   lap   结果   time   range   存储   

原文地址:https://www.cnblogs.com/lanjianhappy/p/11930088.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!