B ramper le principal singe de programme de la station, singe jusqu'à programme d'analyse quel type de vidéo sera populaire

avant-propos

Moi, me lève tous les jours avant d' aller au lit badigeonner la station ape programme plat de poulet B hier pour voir un singe programme dynamique la principale préoccupation de la libération, a été très contrarié, pensez donc juste de faire ce contenu
Insérer ici l'image Description
à la fin du singe programme jusqu'à des principaux types de vidéo sera quoi faire par le public comme elle?

Cliquez sur l'image pour voir le texte que vous ne voulez pas voir ma station vidéo B il semble que vous pouvez importer de la vidéo directement avant, et maintenant ne sais pas pourquoi iframe échoue

travail commencé

1. Tout d'abord besoin de données Collect

Sélectionnez la recherche pour rechercher ape programme, puis sélectionnez la vidéo, la plupart barrage (qui est, de vraies personnes qui regardent plus), pour obtenir un lien vers chaque vidéo.
Insérer ici l'image Description
Donc , nous arrivons à la page des détails pour chaque liaison vidéo et ensuite utiliser XPath pour obtenir le titre de la page de détails, en nom, en page d'accueil et d' autres informations (directement à partir du lecteur vidéo et le nombre de points comme le numéro du dernier résultat enregistré dans cette page est valeurs aberrantes), le nombre de points et comme avec un certain nombre de joueurs pour obtenir api.
Insérer ici l'image Description
Insérer ici l'image Description
api seule id vidéo peut renvoyer le résultat JSON correspondant, il est relativement facile à obtenir, et enfin enregistré dans un fichier csv.

Code de reptiles:

import requests
from lxml import etree
import time
import pandas as pd
import re
import json

#https://search.bilibili.com/video?keyword=%E7%A8%8B%E5%BA%8F%E7%8C%BF&order=dm&duration=0&tids_1=36&tids_2=122&page=32

def get_html(url,header):
    html=requests.get(url,headers=header).text
    return html

def get_all_page(n):
    urls=[]
    for i in range(1,n+1):
        url=f"https://search.bilibili.com/video?keyword=%E7%A8%8B%E5%BA%8F%E7%8C%BF&order=dm&duration=0&tids_1=36&tids_2=122&page={i}"
        html=get_html(url,headers)
        selector = etree.HTML(html)
        li_list=selector.xpath("//ul[@class='video-list clearfix']")
        for li in li_list:
            urls.extend(li.xpath("//li[@class='video-item matrix']/a/@href"))
    return urls

def get_information(urls,avid):
    space_url=[]
    name_list=[]
    views_list=[]
    dz_list=[]
    video_names=[]
    count=0
    for url in urls:
        count+=1
        if count==10:
            time.sleep(1)
        url=url.replace('//','https://')
        print("正在爬取:",url)
        html=get_html(url,headers1)
        selector = etree.HTML(html)
        space_url.append(selector.xpath("//div[@class='name']/a[1]/@href")[0])
        name_list.append(selector.xpath("//div[@class='name']/a[1]/text()")[0])
        video_names.append(selector.xpath("//h1/@title")[0])
        # views_list.append(selector.xpath("//div[@class='video-data']/span[1]/text()")[0])
        # dz_list.append(selector.xpath("//div[@class='ops']/span[1]/text()")[0])

    for id in avid:
        base_url="https://api.bilibili.com/x/web-interface/view?aid="
        html=get_html(base_url+id,headers2)
        res=json.loads(html)
        video_info = res['data']
        views_list.append(video_info["stat"]["view"])
        dz_list.append(video_info["stat"]["like"])
    return space_url,name_list,views_list,dz_list,video_names


def save(n):
    urls=get_all_page(n)
    avid=[]
    for i in urls:
        avid.append(re.findall("\d+",i)[0])
    space_url,name_list,views_list,dz_list,video_names=get_information(urls,avid)
    data=pd.DataFrame({"空间链接":space_url,"up主":name_list,"视频名":video_names,"视频播放次数":views_list,"视频点赞数":dz_list})
    data.to_csv('./B站程序猿up主视频信息.csv',encoding='utf8')
    print("所有数据爬取完毕")



if __name__ == '__main__':
    headers = {
        'Host': 'search.bilibili.com',
        'Referer': 'https//www.bilibili.com/',
        'Sec-Fetch-Mode': 'navigate',
        'Sec-Fetch-Site': 'same-origin',
        'Sec-Fetch-User': '?1',
        'Upgrade-Insecure-Requests': '1',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36'
    }

    headers1 = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36',
        'Host': 'www.bilibili.com',
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
        'Accept-Encoding': 'gzip, deflate, br',
        'Accept-Language': 'zh-CN,zh;q=0.9',
        'Cache-Control': 'max-age=0',
        'Connection': 'keep-alive'
    }


    headers2={
        'Host': 'api.bilibili.com',
        'Sec-Fetch-Mode': 'navigate',
        'Sec-Fetch-Site': 'none',
        'Sec-Fetch-User': '?1',
        'Upgrade-Insecure-Requests': '1',
        'User-Agent': 'Mozilla / 5.0(Windows NT 10.0;Win64;x64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 79.0.3945 .130Safari / 537.36'
    }
    n=int(input("请输入想要爬取的页数:"))
    save(n)

Je rampé jusqu'à dix, un total de 200 données
Insérer ici l'image Description

2. Démarrer l'analyse des données

bibliothèques Guide de base et les données d'importation et de renommer le nom de la colonne
Insérer ici l'image Description
et les données et pré-nettoyage, les valeurs aberrantes afficher les valeurs manquantes. Cependant, étant donné que les données de la station B plus convivial, aucune valeur manquante anomalie.
Insérer ici l'image Description
Ensuite , le nombre de sous - groupe analyse le point Comme beaucoup et jouer un peu plus haut
Insérer ici l'image Description
Insérer ici l'image Description
cette partie groupby est très simple à mettre en œuvre, de sorte que l'analyse de la louange du point de code de dessin

# 找到视频点赞数最多的up主
most_dz=data.groupby(by=data['up主名'],as_index=False)['视频点赞数'].sum()
most_dz.columns=['up主名','视频点赞总数']
most_dz.head()

#降序排序
most_dz=most_dz.sort_values(by=['视频点赞总数'],ascending=False)
most_dz.head(10)

# 可视化点赞数前20的up主
plt.figure(figsize=(13,10))
sns.barplot(most_dz['up主名'][:20],most_dz['视频点赞总数'][:20])
plt.title('程序猿up主视频点赞总数前20', fontsize=22)
plt.grid()
plt.xticks(rotation=90)
plt.show()

Voir. Figure 3. Chacun des premier type de vidéo

Insérer ici l'image Description
J'ai trouvé un professeur confus de programmation vidéo en cause est relativement faible, la plupart du temps lié à l'utilisation de l' ordinateur tous les jours vidéo opération d'ordre supérieur. Je semble plus tard si elles le souhaitent souligner quelques points devraient être moins louanges et plus impliqués dans la programmation, le point supplémentaire pour faire usage quotidien des téléspectateurs vidéo après toutes les vidéos d' enseignement classe de programmation sont enterrés dans les favoris, mon dossier favoris il y a beaucoup de
Insérer ici l'image Description
Nani, seulement 7.370.000 + une vidéo sur le nombre de joueurs, ce qui est trop fort il. Mais aussi qu'il ya encore beaucoup de gens sont toujours prêts à apprendre la programmation dans la station B, en particulier, il semble être le feu de python vidéo particulièrement pertinente

4. Soyez résumé

Résumé:

  1. Dans l'enseignement de la vidéo de la station de classe B a une grande probabilité d'être mis en favoris pour manger des cendres, de sorte que le singe programme des propriétaires de saisir les préférences du public pour créer une vidéo, telles que les séries de python de vidéo d'enseignement est très populaire (la raison est python bonne écologique, simple à apprendre), ou une vidéo d'enseignement une partie de l'exploitation quotidienne de l'ordinateur d'ordre supérieur, ceux-ci sont relativement faciles à attirer le public.

  2. Chère brebis de l'avant du programme 20 ne peut pas entrer plus conscients de ce problème: la qualité vidéo de mouton programme est très élevé, mais pas assez bon pour les groupes parce que presque tous de son programme talk vidéo pratique de singe, pas trop facile à apprendre au lieu de cela le programme singent la plupart du temps qui pensent qu'il est logique, mais l'écoute outsider à regarder ignorant, tout simplement écouter la même bible. Haha, mais pour ceux d'entre nous singes pour le programme cette place est tout simplement le trésor principal en place, il est précisément parce qu'il a choisi de parler une partie du contenu du singe de programme le plus bénéfique, renoncer à d'autres avantages, cela nous permet aussi d'apprendre de plus en plus bonne connaissance.

  3. Regardons les choses en regard sur certains des différents singe programme de points de démarrage, tels que des feuilles de riz par jour. Il aurait pu regardé la raison numéro un si grand nombre de points et la louange est sa vidéo ne prennent en compte singe programme, singe en utilisant le programme vient peut nous apporter de la joie, mais aussi prendre soin d'autres groupes, de certaines des connaissances moins ésotérique des ordinateurs départ, vous pouvez laisser le public en savoir plus sur la vie des grands singes du programme, et la longueur de chaque vidéo est très courte, en ligne avec les tendances actuelles de la courte vidéo.

  4. Dans la liste n'est pas difficile de trouver la place familière, non conventionnelle, la graisse technique ...... En fait, ces propriétaires sont et nous partageons leurs sentiments de connaissances et d'idées. Il ne sont pas sur la liste, mais je voudrais mentionner jusqu'à sept mètres enseignant, vous avez le pied de la fosse, Cai Cai, les pièces, Wang Zhe, longtemps, longtemps .net grand Dieu Anduin avant ...... certains d'entre eux peuvent ne pas avoir très feu, peut-être parce que certains environnements, divers facteurs ont conduit à laisser des commentaires, mais je pense qu'il est leur intention de faire de la vidéo de. Sept mètres et professeur Wang Zhe aller parler la langue de la vidéo pertinente, l'analyse des données Cai Cai, l'apprentissage machine, plus d'une courte connaissance python vidéo, on parle de renforcement des pièces maîtresses de la fosse de l'algorithme un jour avant, au-dessus de ceux qui me composent de plus en plus de connaissances de gain, donc c'est une station importante brosse d'amour I raison B. Bien que je ne sais pas pourquoi plus de pièces au large depuis si longtemps, mais il peut encore espérer revenir à mettre à jour les connaissances de petit python minute précédente.

enfin

Grâce à l'analyse ci - dessus , nous savons que la plupart de la vidéo présente plusieurs caractéristiques intéressantes:
1. large public
2. drôle facilement
3. principalement court basé sur la vidéo
4 populaire et facile à apprendre des techniques comme la vidéo est également très populaire (par exemple, python) ,
mais nous devons aussi libérer les personnes des vidéos pédagogiques significatives ou des vidéos, ce qui est plus nous aider à améliorer.

Bien sûr, ces analyses que la surface, on peut débusquer plus, aller aussi loin pour obtenir grimper aux propriétaires populaires de la vidéo, où la partition, les profils, vidéo ...... barrage, la durée de l' analyse vidéo, texte sentiment, et plus analyse en perspective, de trouver les plus grands facteurs qui influencent.

Notez que ces données ne reflètent pas l'icône et les informations les plus authentiques , parce que je ne rampants les premières pages dix, et où il ne sont pas liés au contenu du programme sera fait de grands singes recherche des interférences de données, donc il suffit d' ajouter des données et sur mon résumé de l' analyse des principales préoccupations de ces a été rendue, et ne peut pas tout à fait vrai, mais mis en avant un certain nombre d'idées et de suggestions.

Publié 85 articles originaux · louange gagné 55 · vues 20000 +

Je suppose que tu aimes

Origine blog.csdn.net/shelgi/article/details/104509693
conseillé
Classement