美文网首页
Python爬虫系列20-十万个冷笑话视频播放量采集

Python爬虫系列20-十万个冷笑话视频播放量采集

作者: Tony_Pm | 来源:发表于2022-08-26 13:25 被阅读0次

    序言

    有的人之所以能够成事,除了自身的能力、天赋、背景之外,他们还有一种成功的特质,那就是专注力,他们能够专注于一件事,不想其他,通过不断地实践,就努力去做好这件事,这样就不容易被外界环境所干扰和造成影响。
    他们会不惜一切代价,会花费大量的时间和精力去做好它,熟能生巧,到时候即使不成功,也是有巨大收获的。
    我也始终坚信,我们每个人的潜力都是不可估量的,只要努力去做,想做的事情,总是会取得很大的效果的。

    实战

    image.png

    代码实战

    我这里采用的是自动化采集,当然也有别的方式哈;大家可自行研究一下。

    from selenium import webdriver
    from lxml import etree
    import pandas as pd
    
    # 数据列表
    urls = []
    title = []
    views = []
    
    wd = webdriver.Chrome(r'C:\Users\Tony\PycharmProjects\Module_Tony_Demo\Moudle\chromedriver.exe')
    # 请求
    wd.get('https://search.bilibili.com/all?keyword=%E7%AC%91%E8%AF%9D&from_source=web_search')
    
    # 获取首页HTML
    f = wd.page_source
    page = etree.HTML(f)
    up = page.xpath('//a[@class="up-name"]/text()')
    q = page.xpath('//li[@class="video-item matrix"]')
    
    
    # 获取二级页面 url,标题
    for i in q:
        url = 'https:' + i.xpath('./a/@href')[0]
        title.append(i.xpath('./a/@title')[0])
        urls.append(url)
    
    # 二级页面数据获取
    def two(tex):
        text = etree.HTML(tex)
        ll = text.xpath('//div[@class="video-data"]')
        for i in ll:
            view = i.xpath('./span[@class="view"]/@title')[0]
            view = view.replace("总播放数", "")
            views.append(view)
    
    
    for m, k in enumerate(urls):
        try:
            wd.get(k)
            tt = wd.page_source
            two(tt)
        except:
            print('出现空值%s' % (m + 1))
    
    # 存储
    writer = {'播放量': views}
    uu = pd.DataFrame(writer)
    uu.to_excel('笑话视频观看人数.xlsx', index=0)
    
    
    image.png

    如果本文对你学习有所帮助-可以点赞👍+ 关注!将持续更新更多新的文章。

    相关文章

      网友评论

          本文标题:Python爬虫系列20-十万个冷笑话视频播放量采集

          本文链接:https://www.haomeiwen.com/subject/ujqzgrtx.html