Python爬虫实战(1)猫眼电影Top100

Python爬虫实战(1)猫眼电影Top100

  • 1.网页分析
  • 2.代码
  • 3.输出结果

利用BeautifulSoup和和requests库实现猫眼电影Top100的抓取

运行平台: Windows
Python版本: Python 3.8
IDE: Pycharm

这是我第一次使用BeautifulSoup和requests库实现Python爬虫,记录下来方便以后复习。

1.网页分析

       使用Chrome浏览器或其他浏览器打开猫眼电影https://maoyan.com/board/4
       按F12分析网页源代码
Python爬虫实战(1)猫眼电影Top100_第1张图片
       排名位于i标签中,电影名在p标签的a标签中,而每个电影名又在dd标签下。
       同时每一页网页url是符合规律的,即在https://maoyan.com/board/4?offset=每一页加10
如https://maoyan.com/board/4?offset=10

2.代码

from bs4 import BeautifulSoup
import requests


def main(url):
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36',
        'Referer': 'https://maoyan.com/board/4'}
    for i in range(10):
        # 得到每一页的电影
        url1 = url + str(i * 10)
        response = requests.get(url1, headers=headers)
        html = response.text
        bf = BeautifulSoup(html, 'html.parser')
        text = bf.find_all('dd')
        for dd in text:
            rank = dd.find('i').string
            name = dd.find_all('p')[0].string
            time = dd.find_all('p')[2].string
            # 因为评分是分布在p标签中的2个i标签中所以要把两个拼接起来
            score = dd.find_all('p')[3]
            score1 = score.find_all('i')[0].string + score.find_all('i')[1].string
            print(rank, end='\t')
            print(name, end='\t')
            print(score1)
            


if __name__ == '__main__':
    url = 'https://maoyan.com/board/4?offset='
    main(url)

3.输出结果

1	霸王别姬	9.5
2	肖申克的救赎	9.5
3	罗马假日	9.1
4	这个杀手不太冷	9.5
5	泰坦尼克号	9.5
6	唐伯虎点秋香	9.1
7	乱世佳人	9.1
8	魂断蓝桥	9.2
9	天空之城	9.0
10	辛德勒的名单	9.2
11	音乐之声	9.0
12	喜剧之王	9.1
13	大闹天宫	9.0
14	春光乍泄	9.2
15	剪刀手爱德华	8.8
16	美丽人生	9.3
17	黑客帝国	9.0
18	哈利·波特与魔法石	9.1
19	指环王3:王者无敌	9.2
20	加勒比海盗	8.9
21	蝙蝠侠:黑暗骑士	9.3
22	无间道	9.1
23	楚门的世界	8.9
24	教父2	9.0
25	射雕英雄传之东成西就	8.9
26	机器人总动员	9.3
27	指环王1:护戒使者	9.0
28	指环王2:双塔奇兵	9.1
29	狮子王	8.8
30	活着	9.0
31	拯救大兵瑞恩	8.9
32	哈尔的移动城堡	9.0
33	盗梦空间	9.2
34	忠犬八公的故事	9.3
35	疯狂原始人	9.5
36	搏击俱乐部	8.8
37	幽灵公主	8.9
38	阿凡达	9.0
39	风之谷	8.9
40	十二怒汉	9.1
41	大话西游之月光宝盒	9.6
42	V字仇杀队	8.8
43	放牛班的春天	8.8
44	当幸福来敲门	8.9
45	速度与激情5	9.2
46	驯龙高手	9.0
47	少年派的奇幻漂流	9.1
48	勇敢的心	8.8
49	闻香识女人	8.8
50	神偷奶爸	9.0
51	黑客帝国3:矩阵革命	8.8
52	飞屋环游记	8.9
53	末代皇帝	8.8
54	断背山	9.0
55	怦然心动	8.9
56	三傻大闹宝莱坞	9.1
57	无敌破坏王	9.1
58	致命魔术	8.8
59	鬼子来了	8.9
60	蝙蝠侠:黑暗骑士崛起	8.9
61	美丽心灵	8.8
62	哈利·波特与死亡圣器(下)	9.0
63	倩女幽魂	9.2
64	夜访吸血鬼	8.8
65	钢琴家	8.8
66	触不可及	9.1
67	本杰明·巴顿奇事	8.8
68	甜蜜蜜	9.2
69	大话西游之大圣娶亲	8.8
70	初恋这件小事	8.8
71	熔炉	8.8
72	新龙门客栈	8.8
73	素媛	9.1
74	小鞋子	9.0
75	萤火之森	9.0
76	教父	9.3
77	穿条纹睡衣的男孩	9.0
78	时空恋旅人	8.9
79	窃听风暴	9.0
80	7号房的礼物	8.9
81	恐怖直播	8.8
82	英雄本色	9.2
83	海豚湾	8.9
84	忠犬八公物语	9.0
85	上帝之城	8.9
86	辩护人	8.8
87	美国往事	9.1
88	完美的世界	8.9
89	七武士	9.1
90	一一	8.9
91	阿飞正传	8.8
92	爱·回家	9.0
93	海洋	9.0
94	我爱你	9.0
95	黄金三镖客	8.9
96	迁徙的鸟	9.1
97	千与千寻	9.3
98	海上钢琴师	9.3
99	天堂电影院	9.2
100	龙猫	9.1

你可能感兴趣的:(Python爬虫)