文中的文本及图片来源于互联网,仅作学习培训、沟通交流应用,不具备一切商业行为,著作权归创作者全部,如有什么问题请立即在线留言以作解决

一 、序言

将猫眼电影库文件的经典电影,依照得分和得分总数综合排序,取前100名
每日早上10点升级,有关数据来源于“猫眼电影库 ”

二 、课程内容闪光点

1、剖析网页页面构造
2、css选择符分析数据
3 、储存CSV文档

三、常用到得库

import requests  # 数据要求模块  第三方模块
import parsel  # 数据分析模块
import csv  # 内嵌模块

 

四、自然环境配备

python 3.6
pycharm
requests
parsel
csv

五 、网络爬虫实例的一般完成流程:

1.明确数据所属的url地址(针对性的剖析网页页面构造<静态数据/动态性>)
2.推送特定url地址的要求(requests)
3.数据分析(获取你自己要想的数据)
4.数据的储存

六、寻找数据所属处

page_num = 0
for page in range(0, 91, 10):
    page_num  = 1
    print(f'                        已经抓取第{page_num}页数据                        ')
    # 1.明确数据所属的url地址(针对性的剖析网页页面构造<静态数据/动态性>)
    url = f'https://maoyan.com/board/4?offset={page}'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36',
        'Host': 'maoyan.com',
        'Cookie': '__mta=19307015.1608270378570.1608272883017.1608273840603.4; uuid_n_v=v1; uuid=5916177040F411EB8908174FD40B8B01D035C777885540CE816A24F19D4594A4; _csrf=203e7011454c450af49832bbb56b6b0c10a9a947c147679cd60805fd4a6b6d4e; _lxsdk_cuid=1740a7dbe93c8-0066c6e2268b8d-3c634103-1fa400-1740a7dbe94c8; _lxsdk=5916177040F411EB8908174FD40B8B01D035C777885540CE816A24F19D4594A4; _lx_utm=utm_source=Baidu&utm_medium=organic; Hm_lvt_703e94591e87be68cc8da0da7cbd0be2=1608270376,1608271969; Hm_lpvt_703e94591e87be68cc8da0da7cbd0be2=1608273833; _lxsdk_s=176746274f8-4f3-eec-119||12'
    }

 

七、解决反爬:

 # 2.推送特定url地址的要求(requests)   解决反爬
    response = requests.get(url=url, headers=headers)
    html_data = response.text  # str  正则表达式
    # print(html_data)

 

八 、获取数据:

# 3.数据分析(获取你自己要想的数据)  css选择符
    # 3.1 变换数据种类
    selector = parsel.Selector(html_data)
    # print(selector)
    # 3.2 数据分析
    dds = selector.css('.board-wrapper dd')  # 全部dd标识

    for dd in dds:  # 数据的二次获取
        title = dd.css('.name a::attr(title)').get()  # 电影名字
        star = dd.css('.star::text').get().strip()  # 出演
        releasetime = dd.css('.releasetime::text').get().strip()  # 公映時间
        score = dd.css('.score i::text').getall()  # 公映時间
        score = ''.join(score)
        img_url = dd.css('img:nth-child(2)::attr(data-src)').get()  # 公映時间

        print(title, star, releasetime, score, img_url, sep=' | ')

 

九、数据储存:

 # 4.数据的储存
        with open('猫眼电影100.csv', mode='a', encoding='utf-8', newline='') as f:
            csv_write = csv.writer(f)
            csv_write.writerow([title, star, releasetime, score, img_url])

 

文章来源于网络,如有侵权请联系站长QQ61910465删除
本文版权归趣快排营销www.seoguRubloG.com 所有,如有转发请注明来出,竞价开户托管,seo优化请联系✚Qq61910465