爬虫易烊千玺影响力榜单(利用浏览器驱动的方法)

   日期:2020-08-04     浏览:97    评论:0    
核心提示:追星一族如何通过榜单分析自己爱豆的“江湖地位”呢?又如何通过数据其找到与竞争对手的差距呢?接下来,我以易烊千玺为例,爬取明星势力榜单数据。 爬虫明星影响力榜 一、步骤描述:1、调用浏览器驱动2、利用3个列表分别存储名字、排名、影响力值3、找到易烊千玺的位置4、通过指针找到其对应的上家、下家5、打印数据结果二、代码如下:# coding = utf-8from bs4

追星一族如何通过榜单分析自己爱豆的“江湖地位”呢?
又如何通过数据找到其与竞争对手间的差距呢?

接下来,我以易烊千玺为例,爬取明星影响力榜单数据。

爬虫明星影响力榜

一、步骤描述:
1、调用浏览器驱动
2、利用3个列表分别存储名字、排名、影响力值
3、找到易烊千玺的位置
4、通过指针找到其对应的上家、下家
5、打印数据结果

二、代码如下:

# coding = utf-8
from bs4 import BeautifulSoup #网页解析获取数据
import re #正则表达式进行文字匹配
import urllib.request,urllib.error #制定url获取网页数据
import xlwt  #进行excel操作
import sqlite3 #进行sqlite数据库操作
from selenium import webdriver
import time



wd = webdriver.Chrome('./chromedriver.exe')
wd.get("https://m.iqiyi.com/m5/bubble/dynamicTopList.html?platform=1042&origin=paopao_app&social_platform=wechat_friend")

find_yy = "易烊千玺"
list_num = []
list_name = []
list_rank = []

for i in range(7):#将滚动条拉直最底部
	wd.execute_script('window.scrollBy(0,document.body.scrollHeight)')
	time.sleep(1)

#获取榜单上所有明星名字,加入列表list_name
targets = wd.find_elements_by_xpath("//*[@class='rank-c-name']")
for n in targets:
	list_name.append(n.text)

#获取榜单上所有明星排名,加入列表list_num
targets = wd.find_elements_by_xpath("//*[@class='mark-topNo']")
for n in targets:
	list_num.append(n.text)

#获取榜单上所有明星影响力,加入列表list_rank
targets = wd.find_elements_by_xpath("//*[@class='rank-c-total']")
for n in targets:
	list_rank.append(n.text)



for i in range(100):
	if list_name[i] == find_yy:
		break
before_name = list_name[i-1]
after_name = list_name[i+1]
before_rank = list_rank[i-1]
after_rank = list_rank[i+1]
print("易烊千玺-----",list_rank[i])
print("其上家",before_name,"-----",before_rank)
print("其下家",after_name,"-----",after_rank)

三、小结:其实这个方法挺笨拙的,属于小学生思维。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服